From 5be9af00d9308e5b406c450cb2e7a29ba3fe3381 Mon Sep 17 00:00:00 2001 From: Darya Nechaeva Date: Thu, 30 Apr 2026 20:15:53 +0300 Subject: [PATCH 01/16] feat: add utility library for load and write images --- third_party/stb/stb_image.h | 0 third_party/stb/stb_image_write.h | 2050 +++++++++++++++++++++++++++++ 2 files changed, 2050 insertions(+) create mode 100644 third_party/stb/stb_image.h create mode 100644 third_party/stb/stb_image_write.h diff --git a/third_party/stb/stb_image.h b/third_party/stb/stb_image.h new file mode 100644 index 0000000..e69de29 diff --git a/third_party/stb/stb_image_write.h b/third_party/stb/stb_image_write.h new file mode 100644 index 0000000..6a96386 --- /dev/null +++ b/third_party/stb/stb_image_write.h @@ -0,0 +1,2050 @@ +/* stb_image_write - v1.16 - public domain - http://nothings.org/stb + writes out PNG/BMP/TGA/JPEG/HDR images to C stdio - Sean Barrett 2010-2015 + no +warranty implied; use at your own risk + + Before #including, + + #define STB_IMAGE_WRITE_IMPLEMENTATION + + in the file that you want to have the implementation. + + Will probably not work correctly with strict-aliasing optimizations. + +ABOUT: + + This header file is a library for writing images to C stdio or a callback. + + The PNG output is not optimal; it is 20-50% larger than the file + written by a decent optimizing implementation; though providing a custom + zlib compress function (see STBIW_ZLIB_COMPRESS) can mitigate that. + This library is designed for source code compactness and simplicity, + not optimal image file size or run-time performance. + +BUILDING: + + You can #define STBIW_ASSERT(x) before the #include to avoid using assert.h. + You can #define STBIW_MALLOC(), STBIW_REALLOC(), and STBIW_FREE() to replace + malloc,realloc,free. + You can #define STBIW_MEMMOVE() to replace memmove() + You can #define STBIW_ZLIB_COMPRESS to use a custom zlib-style compress +function for PNG compression (instead of the builtin one), it must have the +following signature: unsigned char * my_compress(unsigned char *data, int +data_len, int *out_len, int quality); The returned data will be freed with +STBIW_FREE() (free() by default), so it must be heap allocated with +STBIW_MALLOC() (malloc() by default), + +UNICODE: + + If compiling for Windows and you wish to use Unicode filenames, compile + with + #define STBIW_WINDOWS_UTF8 + and pass utf8-encoded filenames. Call stbiw_convert_wchar_to_utf8 to convert + Windows wchar_t filenames to utf8. + +USAGE: + + There are five functions, one for each image file format: + + int stbi_write_png(char const *filename, int w, int h, int comp, const +void *data, int stride_in_bytes); int stbi_write_bmp(char const *filename, int +w, int h, int comp, const void *data); int stbi_write_tga(char const *filename, +int w, int h, int comp, const void *data); int stbi_write_jpg(char const +*filename, int w, int h, int comp, const void *data, int quality); int +stbi_write_hdr(char const *filename, int w, int h, int comp, const float *data); + + void stbi_flip_vertically_on_write(int flag); // flag is non-zero to +flip data vertically + + There are also five equivalent functions that use an arbitrary write +function. You are expected to open/close your file-equivalent before and after +calling these: + + int stbi_write_png_to_func(stbi_write_func *func, void *context, int w, +int h, int comp, const void *data, int stride_in_bytes); int +stbi_write_bmp_to_func(stbi_write_func *func, void *context, int w, int h, int +comp, const void *data); int stbi_write_tga_to_func(stbi_write_func *func, void +*context, int w, int h, int comp, const void *data); int +stbi_write_hdr_to_func(stbi_write_func *func, void *context, int w, int h, int +comp, const float *data); int stbi_write_jpg_to_func(stbi_write_func *func, void +*context, int x, int y, int comp, const void *data, int quality); + + where the callback is: + void stbi_write_func(void *context, void *data, int size); + + You can configure it with these global variables: + int stbi_write_tga_with_rle; // defaults to true; set to 0 +to disable RLE int stbi_write_png_compression_level; // defaults to 8; set to +higher for more compression int stbi_write_force_png_filter; // defaults +to -1; set to 0..5 to force a filter mode + + + You can define STBI_WRITE_NO_STDIO to disable the file variant of these + functions, so the library will not use stdio.h at all. However, this will + also disable HDR writing, because it requires stdio for formatted output. + + Each function returns 0 on failure and non-0 on success. + + The functions create an image file defined by the parameters. The image + is a rectangle of pixels stored from left-to-right, top-to-bottom. + Each pixel contains 'comp' channels of data stored interleaved with 8-bits + per channel, in the following order: 1=Y, 2=YA, 3=RGB, 4=RGBA. (Y is + monochrome color.) The rectangle is 'w' pixels wide and 'h' pixels tall. + The *data pointer points to the first byte of the top-left-most pixel. + For PNG, "stride_in_bytes" is the distance in bytes from the first byte of + a row of pixels to the first byte of the next row of pixels. + + PNG creates output files with the same number of components as the input. + The BMP format expands Y to RGB in the file format and does not + output alpha. + + PNG supports writing rectangles of data even when the bytes storing rows of + data are not consecutive in memory (e.g. sub-rectangles of a larger image), + by supplying the stride between the beginning of adjacent rows. The other + formats do not. (Thus you cannot write a native-format BMP through the BMP + writer, both because it is in BGR order and because it may have padding + at the end of the line.) + + PNG allows you to set the deflate compression level by setting the global + variable 'stbi_write_png_compression_level' (it defaults to 8). + + HDR expects linear float data. Since the format is always 32-bit rgb(e) + data, alpha (if provided) is discarded, and for monochrome data it is + replicated across all three channels. + + TGA supports RLE or non-RLE compressed data. To use non-RLE-compressed + data, set the global variable 'stbi_write_tga_with_rle' to 0. + + JPEG does ignore alpha channels in input data; quality is between 1 and 100. + Higher quality looks better but results in a bigger image. + JPEG baseline (no JPEG progressive). + +CREDITS: + + + Sean Barrett - PNG/BMP/TGA + Baldur Karlsson - HDR + Jean-Sebastien Guay - TGA monochrome + Tim Kelsey - misc enhancements + Alan Hickman - TGA RLE + Emmanuel Julien - initial file IO callback implementation + Jon Olick - original jo_jpeg.cpp code + Daniel Gibson - integrate JPEG, allow external zlib + Aarni Koskela - allow choosing PNG filter + + bugfixes: + github:Chribba + Guillaume Chereau + github:jry2 + github:romigrou + Sergio Gonzalez + Jonas Karlsson + Filip Wasil + Thatcher Ulrich + github:poppolopoppo + Patrick Boettcher + github:xeekworx + Cap Petschulat + Simon Rodriguez + Ivan Tikhonov + github:ignotion + Adam Schackart + Andrew Kensler + +LICENSE + + See end of file for license information. + +*/ + +#ifndef INCLUDE_STB_IMAGE_WRITE_H +#define INCLUDE_STB_IMAGE_WRITE_H + +#include + +// if STB_IMAGE_WRITE_STATIC causes problems, try defining STBIWDEF to 'inline' +// or 'static inline' +#ifndef STBIWDEF +#ifdef STB_IMAGE_WRITE_STATIC +#define STBIWDEF static +#else +#ifdef __cplusplus +#define STBIWDEF extern "C" +#else +#define STBIWDEF extern +#endif +#endif +#endif + +#ifndef STB_IMAGE_WRITE_STATIC // C++ forbids static forward declarations +STBIWDEF int stbi_write_tga_with_rle; +STBIWDEF int stbi_write_png_compression_level; +STBIWDEF int stbi_write_force_png_filter; +#endif + +#ifndef STBI_WRITE_NO_STDIO +STBIWDEF int stbi_write_png(char const *filename, int w, int h, int comp, + const void *data, int stride_in_bytes); +STBIWDEF int stbi_write_bmp(char const *filename, int w, int h, int comp, + const void *data); +STBIWDEF int stbi_write_tga(char const *filename, int w, int h, int comp, + const void *data); +STBIWDEF int stbi_write_hdr(char const *filename, int w, int h, int comp, + const float *data); +STBIWDEF int stbi_write_jpg(char const *filename, int x, int y, int comp, + const void *data, int quality); + +#ifdef STBIW_WINDOWS_UTF8 +STBIWDEF int stbiw_convert_wchar_to_utf8(char *buffer, size_t bufferlen, + const wchar_t *input); +#endif +#endif + +typedef void stbi_write_func(void *context, void *data, int size); + +STBIWDEF int stbi_write_png_to_func(stbi_write_func *func, void *context, int w, + int h, int comp, const void *data, + int stride_in_bytes); +STBIWDEF int stbi_write_bmp_to_func(stbi_write_func *func, void *context, int w, + int h, int comp, const void *data); +STBIWDEF int stbi_write_tga_to_func(stbi_write_func *func, void *context, int w, + int h, int comp, const void *data); +STBIWDEF int stbi_write_hdr_to_func(stbi_write_func *func, void *context, int w, + int h, int comp, const float *data); +STBIWDEF int stbi_write_jpg_to_func(stbi_write_func *func, void *context, int x, + int y, int comp, const void *data, + int quality); + +STBIWDEF void stbi_flip_vertically_on_write(int flip_boolean); + +#endif // INCLUDE_STB_IMAGE_WRITE_H + +#ifdef STB_IMAGE_WRITE_IMPLEMENTATION + +#ifdef _WIN32 +#ifndef _CRT_SECURE_NO_WARNINGS +#define _CRT_SECURE_NO_WARNINGS +#endif +#ifndef _CRT_NONSTDC_NO_DEPRECATE +#define _CRT_NONSTDC_NO_DEPRECATE +#endif +#endif + +#ifndef STBI_WRITE_NO_STDIO +#include +#endif // STBI_WRITE_NO_STDIO + +#include +#include +#include +#include + +#if defined(STBIW_MALLOC) && defined(STBIW_FREE) && \ + (defined(STBIW_REALLOC) || defined(STBIW_REALLOC_SIZED)) +// ok +#elif !defined(STBIW_MALLOC) && !defined(STBIW_FREE) && \ + !defined(STBIW_REALLOC) && !defined(STBIW_REALLOC_SIZED) +// ok +#else +#error \ + "Must define all or none of STBIW_MALLOC, STBIW_FREE, and STBIW_REALLOC (or STBIW_REALLOC_SIZED)." +#endif + +#ifndef STBIW_MALLOC +#define STBIW_MALLOC(sz) malloc(sz) +#define STBIW_REALLOC(p, newsz) realloc(p, newsz) +#define STBIW_FREE(p) free(p) +#endif + +#ifndef STBIW_REALLOC_SIZED +#define STBIW_REALLOC_SIZED(p, oldsz, newsz) STBIW_REALLOC(p, newsz) +#endif + +#ifndef STBIW_MEMMOVE +#define STBIW_MEMMOVE(a, b, sz) memmove(a, b, sz) +#endif + +#ifndef STBIW_ASSERT +#include +#define STBIW_ASSERT(x) assert(x) +#endif + +#define STBIW_UCHAR(x) (unsigned char)((x) & 0xff) + +#ifdef STB_IMAGE_WRITE_STATIC +static int stbi_write_png_compression_level = 8; +static int stbi_write_tga_with_rle = 1; +static int stbi_write_force_png_filter = -1; +#else +int stbi_write_png_compression_level = 8; +int stbi_write_tga_with_rle = 1; +int stbi_write_force_png_filter = -1; +#endif + +static int stbi__flip_vertically_on_write = 0; + +STBIWDEF void stbi_flip_vertically_on_write(int flag) { + stbi__flip_vertically_on_write = flag; +} + +typedef struct { + stbi_write_func *func; + void *context; + unsigned char buffer[64]; + int buf_used; +} stbi__write_context; + +// initialize a callback-based context +static void stbi__start_write_callbacks(stbi__write_context *s, + stbi_write_func *c, void *context) { + s->func = c; + s->context = context; +} + +#ifndef STBI_WRITE_NO_STDIO + +static void stbi__stdio_write(void *context, void *data, int size) { + fwrite(data, 1, size, (FILE *)context); +} + +#if defined(_WIN32) && defined(STBIW_WINDOWS_UTF8) +#ifdef __cplusplus +#define STBIW_EXTERN extern "C" +#else +#define STBIW_EXTERN extern +#endif +STBIW_EXTERN +__declspec(dllimport) int __stdcall MultiByteToWideChar( + unsigned int cp, unsigned long flags, const char *str, int cbmb, + wchar_t *widestr, int cchwide); +STBIW_EXTERN +__declspec(dllimport) int __stdcall WideCharToMultiByte( + unsigned int cp, unsigned long flags, const wchar_t *widestr, int cchwide, + char *str, int cbmb, const char *defchar, int *used_default); + +STBIWDEF int stbiw_convert_wchar_to_utf8(char *buffer, size_t bufferlen, + const wchar_t *input) { + return WideCharToMultiByte(65001 /* UTF8 */, 0, input, -1, buffer, + (int)bufferlen, NULL, NULL); +} +#endif + +static FILE *stbiw__fopen(char const *filename, char const *mode) { + FILE *f; +#if defined(_WIN32) && defined(STBIW_WINDOWS_UTF8) + wchar_t wMode[64]; + wchar_t wFilename[1024]; + if (0 == MultiByteToWideChar(65001 /* UTF8 */, 0, filename, -1, wFilename, + sizeof(wFilename) / sizeof(*wFilename))) + return 0; + + if (0 == MultiByteToWideChar(65001 /* UTF8 */, 0, mode, -1, wMode, + sizeof(wMode) / sizeof(*wMode))) + return 0; + +#if defined(_MSC_VER) && _MSC_VER >= 1400 + if (0 != _wfopen_s(&f, wFilename, wMode)) + f = 0; +#else + f = _wfopen(wFilename, wMode); +#endif + +#elif defined(_MSC_VER) && _MSC_VER >= 1400 + if (0 != fopen_s(&f, filename, mode)) + f = 0; +#else + f = fopen(filename, mode); +#endif + return f; +} + +static int stbi__start_write_file(stbi__write_context *s, + const char *filename) { + FILE *f = stbiw__fopen(filename, "wb"); + stbi__start_write_callbacks(s, stbi__stdio_write, (void *)f); + return f != NULL; +} + +static void stbi__end_write_file(stbi__write_context *s) { + fclose((FILE *)s->context); +} + +#endif // !STBI_WRITE_NO_STDIO + +typedef unsigned int stbiw_uint32; +typedef int stb_image_write_test[sizeof(stbiw_uint32) == 4 ? 1 : -1]; + +static void stbiw__writefv(stbi__write_context *s, const char *fmt, va_list v) { + while (*fmt) { + switch (*fmt++) { + case ' ': + break; + case '1': { + unsigned char x = STBIW_UCHAR(va_arg(v, int)); + s->func(s->context, &x, 1); + break; + } + case '2': { + int x = va_arg(v, int); + unsigned char b[2]; + b[0] = STBIW_UCHAR(x); + b[1] = STBIW_UCHAR(x >> 8); + s->func(s->context, b, 2); + break; + } + case '4': { + stbiw_uint32 x = va_arg(v, int); + unsigned char b[4]; + b[0] = STBIW_UCHAR(x); + b[1] = STBIW_UCHAR(x >> 8); + b[2] = STBIW_UCHAR(x >> 16); + b[3] = STBIW_UCHAR(x >> 24); + s->func(s->context, b, 4); + break; + } + default: + STBIW_ASSERT(0); + return; + } + } +} + +static void stbiw__writef(stbi__write_context *s, const char *fmt, ...) { + va_list v; + va_start(v, fmt); + stbiw__writefv(s, fmt, v); + va_end(v); +} + +static void stbiw__write_flush(stbi__write_context *s) { + if (s->buf_used) { + s->func(s->context, &s->buffer, s->buf_used); + s->buf_used = 0; + } +} + +static void stbiw__putc(stbi__write_context *s, unsigned char c) { + s->func(s->context, &c, 1); +} + +static void stbiw__write1(stbi__write_context *s, unsigned char a) { + if ((size_t)s->buf_used + 1 > sizeof(s->buffer)) + stbiw__write_flush(s); + s->buffer[s->buf_used++] = a; +} + +static void stbiw__write3(stbi__write_context *s, unsigned char a, + unsigned char b, unsigned char c) { + int n; + if ((size_t)s->buf_used + 3 > sizeof(s->buffer)) + stbiw__write_flush(s); + n = s->buf_used; + s->buf_used = n + 3; + s->buffer[n + 0] = a; + s->buffer[n + 1] = b; + s->buffer[n + 2] = c; +} + +static void stbiw__write_pixel(stbi__write_context *s, int rgb_dir, int comp, + int write_alpha, int expand_mono, + unsigned char *d) { + unsigned char bg[3] = {255, 0, 255}, px[3]; + int k; + + if (write_alpha < 0) + stbiw__write1(s, d[comp - 1]); + + switch (comp) { + case 2: // 2 pixels = mono + alpha, alpha is written separately, so same as + // 1-channel case + case 1: + if (expand_mono) + stbiw__write3(s, d[0], d[0], d[0]); // monochrome bmp + else + stbiw__write1(s, d[0]); // monochrome TGA + break; + case 4: + if (!write_alpha) { + // composite against pink background + for (k = 0; k < 3; ++k) + px[k] = bg[k] + ((d[k] - bg[k]) * d[3]) / 255; + stbiw__write3(s, px[1 - rgb_dir], px[1], px[1 + rgb_dir]); + break; + } + /* FALLTHROUGH */ + case 3: + stbiw__write3(s, d[1 - rgb_dir], d[1], d[1 + rgb_dir]); + break; + } + if (write_alpha > 0) + stbiw__write1(s, d[comp - 1]); +} + +static void stbiw__write_pixels(stbi__write_context *s, int rgb_dir, int vdir, + int x, int y, int comp, void *data, + int write_alpha, int scanline_pad, + int expand_mono) { + stbiw_uint32 zero = 0; + int i, j, j_end; + + if (y <= 0) + return; + + if (stbi__flip_vertically_on_write) + vdir *= -1; + + if (vdir < 0) { + j_end = -1; + j = y - 1; + } else { + j_end = y; + j = 0; + } + + for (; j != j_end; j += vdir) { + for (i = 0; i < x; ++i) { + unsigned char *d = (unsigned char *)data + (j * x + i) * comp; + stbiw__write_pixel(s, rgb_dir, comp, write_alpha, expand_mono, d); + } + stbiw__write_flush(s); + s->func(s->context, &zero, scanline_pad); + } +} + +static int stbiw__outfile(stbi__write_context *s, int rgb_dir, int vdir, int x, + int y, int comp, int expand_mono, void *data, + int alpha, int pad, const char *fmt, ...) { + if (y < 0 || x < 0) { + return 0; + } else { + va_list v; + va_start(v, fmt); + stbiw__writefv(s, fmt, v); + va_end(v); + stbiw__write_pixels(s, rgb_dir, vdir, x, y, comp, data, alpha, pad, + expand_mono); + return 1; + } +} + +static int stbi_write_bmp_core(stbi__write_context *s, int x, int y, int comp, + const void *data) { + if (comp != 4) { + // write RGB bitmap + int pad = (-x * 3) & 3; + return stbiw__outfile(s, -1, -1, x, y, comp, 1, (void *)data, 0, pad, + "11 4 22 4" + "4 44 22 444444", + 'B', 'M', 14 + 40 + (x * 3 + pad) * y, 0, 0, + 14 + 40, // file header + 40, x, y, 1, 24, 0, 0, 0, 0, 0, 0); // bitmap header + } else { + // RGBA bitmaps need a v4 header + // use BI_BITFIELDS mode with 32bpp and alpha mask + // (straight BI_RGB with alpha mask doesn't work in most readers) + return stbiw__outfile(s, -1, -1, x, y, comp, 1, (void *)data, 1, 0, + "11 4 22 4" + "4 44 22 444444 4444 4 444 444 444 444", + 'B', 'M', 14 + 108 + x * y * 4, 0, 0, + 14 + 108, // file header + 108, x, y, 1, 32, 3, 0, 0, 0, 0, 0, 0xff0000, 0xff00, + 0xff, 0xff000000u, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0); // bitmap V4 header + } +} + +STBIWDEF int stbi_write_bmp_to_func(stbi_write_func *func, void *context, int x, + int y, int comp, const void *data) { + stbi__write_context s = {0}; + stbi__start_write_callbacks(&s, func, context); + return stbi_write_bmp_core(&s, x, y, comp, data); +} + +#ifndef STBI_WRITE_NO_STDIO +STBIWDEF int stbi_write_bmp(char const *filename, int x, int y, int comp, + const void *data) { + stbi__write_context s = {0}; + if (stbi__start_write_file(&s, filename)) { + int r = stbi_write_bmp_core(&s, x, y, comp, data); + stbi__end_write_file(&s); + return r; + } else + return 0; +} +#endif //! STBI_WRITE_NO_STDIO + +static int stbi_write_tga_core(stbi__write_context *s, int x, int y, int comp, + void *data) { + int has_alpha = (comp == 2 || comp == 4); + int colorbytes = has_alpha ? comp - 1 : comp; + int format = + colorbytes < 2 + ? 3 + : 2; // 3 color channels (RGB/RGBA) = 2, 1 color channel (Y/YA) = 3 + + if (y < 0 || x < 0) + return 0; + + if (!stbi_write_tga_with_rle) { + return stbiw__outfile(s, -1, -1, x, y, comp, 0, (void *)data, has_alpha, 0, + "111 221 2222 11", 0, 0, format, 0, 0, 0, 0, 0, x, y, + (colorbytes + has_alpha) * 8, has_alpha * 8); + } else { + int i, j, k; + int jend, jdir; + + stbiw__writef(s, "111 221 2222 11", 0, 0, format + 8, 0, 0, 0, 0, 0, x, y, + (colorbytes + has_alpha) * 8, has_alpha * 8); + + if (stbi__flip_vertically_on_write) { + j = 0; + jend = y; + jdir = 1; + } else { + j = y - 1; + jend = -1; + jdir = -1; + } + for (; j != jend; j += jdir) { + unsigned char *row = (unsigned char *)data + j * x * comp; + int len; + + for (i = 0; i < x; i += len) { + unsigned char *begin = row + i * comp; + int diff = 1; + len = 1; + + if (i < x - 1) { + ++len; + diff = memcmp(begin, row + (i + 1) * comp, comp); + if (diff) { + const unsigned char *prev = begin; + for (k = i + 2; k < x && len < 128; ++k) { + if (memcmp(prev, row + k * comp, comp)) { + prev += comp; + ++len; + } else { + --len; + break; + } + } + } else { + for (k = i + 2; k < x && len < 128; ++k) { + if (!memcmp(begin, row + k * comp, comp)) { + ++len; + } else { + break; + } + } + } + } + + if (diff) { + unsigned char header = STBIW_UCHAR(len - 1); + stbiw__write1(s, header); + for (k = 0; k < len; ++k) { + stbiw__write_pixel(s, -1, comp, has_alpha, 0, begin + k * comp); + } + } else { + unsigned char header = STBIW_UCHAR(len - 129); + stbiw__write1(s, header); + stbiw__write_pixel(s, -1, comp, has_alpha, 0, begin); + } + } + } + stbiw__write_flush(s); + } + return 1; +} + +STBIWDEF int stbi_write_tga_to_func(stbi_write_func *func, void *context, int x, + int y, int comp, const void *data) { + stbi__write_context s = {0}; + stbi__start_write_callbacks(&s, func, context); + return stbi_write_tga_core(&s, x, y, comp, (void *)data); +} + +#ifndef STBI_WRITE_NO_STDIO +STBIWDEF int stbi_write_tga(char const *filename, int x, int y, int comp, + const void *data) { + stbi__write_context s = {0}; + if (stbi__start_write_file(&s, filename)) { + int r = stbi_write_tga_core(&s, x, y, comp, (void *)data); + stbi__end_write_file(&s); + return r; + } else + return 0; +} +#endif + +// ************************************************************************************************* +// Radiance RGBE HDR writer +// by Baldur Karlsson + +#define stbiw__max(a, b) ((a) > (b) ? (a) : (b)) + +#ifndef STBI_WRITE_NO_STDIO + +static void stbiw__linear_to_rgbe(unsigned char *rgbe, float *linear) { + int exponent; + float maxcomp = stbiw__max(linear[0], stbiw__max(linear[1], linear[2])); + + if (maxcomp < 1e-32f) { + rgbe[0] = rgbe[1] = rgbe[2] = rgbe[3] = 0; + } else { + float normalize = (float)frexp(maxcomp, &exponent) * 256.0f / maxcomp; + + rgbe[0] = (unsigned char)(linear[0] * normalize); + rgbe[1] = (unsigned char)(linear[1] * normalize); + rgbe[2] = (unsigned char)(linear[2] * normalize); + rgbe[3] = (unsigned char)(exponent + 128); + } +} + +static void stbiw__write_run_data(stbi__write_context *s, int length, + unsigned char databyte) { + unsigned char lengthbyte = STBIW_UCHAR(length + 128); + STBIW_ASSERT(length + 128 <= 255); + s->func(s->context, &lengthbyte, 1); + s->func(s->context, &databyte, 1); +} + +static void stbiw__write_dump_data(stbi__write_context *s, int length, + unsigned char *data) { + unsigned char lengthbyte = STBIW_UCHAR(length); + STBIW_ASSERT(length <= + 128); // inconsistent with spec but consistent with official code + s->func(s->context, &lengthbyte, 1); + s->func(s->context, data, length); +} + +static void stbiw__write_hdr_scanline(stbi__write_context *s, int width, + int ncomp, unsigned char *scratch, + float *scanline) { + unsigned char scanlineheader[4] = {2, 2, 0, 0}; + unsigned char rgbe[4]; + float linear[3]; + int x; + + scanlineheader[2] = (width & 0xff00) >> 8; + scanlineheader[3] = (width & 0x00ff); + + /* skip RLE for images too small or large */ + if (width < 8 || width >= 32768) { + for (x = 0; x < width; x++) { + switch (ncomp) { + case 4: /* fallthrough */ + case 3: + linear[2] = scanline[x * ncomp + 2]; + linear[1] = scanline[x * ncomp + 1]; + linear[0] = scanline[x * ncomp + 0]; + break; + default: + linear[0] = linear[1] = linear[2] = scanline[x * ncomp + 0]; + break; + } + stbiw__linear_to_rgbe(rgbe, linear); + s->func(s->context, rgbe, 4); + } + } else { + int c, r; + /* encode into scratch buffer */ + for (x = 0; x < width; x++) { + switch (ncomp) { + case 4: /* fallthrough */ + case 3: + linear[2] = scanline[x * ncomp + 2]; + linear[1] = scanline[x * ncomp + 1]; + linear[0] = scanline[x * ncomp + 0]; + break; + default: + linear[0] = linear[1] = linear[2] = scanline[x * ncomp + 0]; + break; + } + stbiw__linear_to_rgbe(rgbe, linear); + scratch[x + width * 0] = rgbe[0]; + scratch[x + width * 1] = rgbe[1]; + scratch[x + width * 2] = rgbe[2]; + scratch[x + width * 3] = rgbe[3]; + } + + s->func(s->context, scanlineheader, 4); + + /* RLE each component separately */ + for (c = 0; c < 4; c++) { + unsigned char *comp = &scratch[width * c]; + + x = 0; + while (x < width) { + // find first run + r = x; + while (r + 2 < width) { + if (comp[r] == comp[r + 1] && comp[r] == comp[r + 2]) + break; + ++r; + } + if (r + 2 >= width) + r = width; + // dump up to first run + while (x < r) { + int len = r - x; + if (len > 128) + len = 128; + stbiw__write_dump_data(s, len, &comp[x]); + x += len; + } + // if there's a run, output it + if (r + 2 < width) { // same test as what we break out of in search + // loop, so only true if we break'd + // find next byte after run + while (r < width && comp[r] == comp[x]) + ++r; + // output run up to r + while (x < r) { + int len = r - x; + if (len > 127) + len = 127; + stbiw__write_run_data(s, len, comp[x]); + x += len; + } + } + } + } + } +} + +static int stbi_write_hdr_core(stbi__write_context *s, int x, int y, int comp, + float *data) { + if (y <= 0 || x <= 0 || data == NULL) + return 0; + else { + // Each component is stored separately. Allocate scratch space for full + // output scanline. + unsigned char *scratch = (unsigned char *)STBIW_MALLOC(x * 4); + int i, len; + char buffer[128]; + char header[] = + "#?RADIANCE\n# Written by stb_image_write.h\nFORMAT=32-bit_rle_rgbe\n"; + s->func(s->context, header, sizeof(header) - 1); + +#ifdef __STDC_LIB_EXT1__ + len = + sprintf_s(buffer, sizeof(buffer), + "EXPOSURE= 1.0000000000000\n\n-Y %d +X %d\n", y, x); +#else + len = sprintf(buffer, "EXPOSURE= 1.0000000000000\n\n-Y %d +X %d\n", + y, x); +#endif + s->func(s->context, buffer, len); + + for (i = 0; i < y; i++) + stbiw__write_hdr_scanline( + s, x, comp, scratch, + data + comp * x * (stbi__flip_vertically_on_write ? y - 1 - i : i)); + STBIW_FREE(scratch); + return 1; + } +} + +STBIWDEF int stbi_write_hdr_to_func(stbi_write_func *func, void *context, int x, + int y, int comp, const float *data) { + stbi__write_context s = {0}; + stbi__start_write_callbacks(&s, func, context); + return stbi_write_hdr_core(&s, x, y, comp, (float *)data); +} + +STBIWDEF int stbi_write_hdr(char const *filename, int x, int y, int comp, + const float *data) { + stbi__write_context s = {0}; + if (stbi__start_write_file(&s, filename)) { + int r = stbi_write_hdr_core(&s, x, y, comp, (float *)data); + stbi__end_write_file(&s); + return r; + } else + return 0; +} +#endif // STBI_WRITE_NO_STDIO + +////////////////////////////////////////////////////////////////////////////// +// +// PNG writer +// + +#ifndef STBIW_ZLIB_COMPRESS +// stretchy buffer; stbiw__sbpush() == vector<>::push_back() -- stbiw__sbcount() +// == vector<>::size() +#define stbiw__sbraw(a) ((int *)(void *)(a) - 2) +#define stbiw__sbm(a) stbiw__sbraw(a)[0] +#define stbiw__sbn(a) stbiw__sbraw(a)[1] + +#define stbiw__sbneedgrow(a, n) ((a) == 0 || stbiw__sbn(a) + n >= stbiw__sbm(a)) +#define stbiw__sbmaybegrow(a, n) \ + (stbiw__sbneedgrow(a, (n)) ? stbiw__sbgrow(a, n) : 0) +#define stbiw__sbgrow(a, n) stbiw__sbgrowf((void **)&(a), (n), sizeof(*(a))) + +#define stbiw__sbpush(a, v) \ + (stbiw__sbmaybegrow(a, 1), (a)[stbiw__sbn(a)++] = (v)) +#define stbiw__sbcount(a) ((a) ? stbiw__sbn(a) : 0) +#define stbiw__sbfree(a) ((a) ? STBIW_FREE(stbiw__sbraw(a)), 0 : 0) + +static void *stbiw__sbgrowf(void **arr, int increment, int itemsize) { + int m = *arr ? 2 * stbiw__sbm(*arr) + increment : increment + 1; + void *p = STBIW_REALLOC_SIZED( + *arr ? stbiw__sbraw(*arr) : 0, + *arr ? (stbiw__sbm(*arr) * itemsize + sizeof(int) * 2) : 0, + itemsize * m + sizeof(int) * 2); + STBIW_ASSERT(p); + if (p) { + if (!*arr) + ((int *)p)[1] = 0; + *arr = (void *)((int *)p + 2); + stbiw__sbm(*arr) = m; + } + return *arr; +} + +static unsigned char *stbiw__zlib_flushf(unsigned char *data, + unsigned int *bitbuffer, + int *bitcount) { + while (*bitcount >= 8) { + stbiw__sbpush(data, STBIW_UCHAR(*bitbuffer)); + *bitbuffer >>= 8; + *bitcount -= 8; + } + return data; +} + +static int stbiw__zlib_bitrev(int code, int codebits) { + int res = 0; + while (codebits--) { + res = (res << 1) | (code & 1); + code >>= 1; + } + return res; +} + +static unsigned int stbiw__zlib_countm(unsigned char *a, unsigned char *b, + int limit) { + int i; + for (i = 0; i < limit && i < 258; ++i) + if (a[i] != b[i]) + break; + return i; +} + +static unsigned int stbiw__zhash(unsigned char *data) { + stbiw_uint32 hash = data[0] + (data[1] << 8) + (data[2] << 16); + hash ^= hash << 3; + hash += hash >> 5; + hash ^= hash << 4; + hash += hash >> 17; + hash ^= hash << 25; + hash += hash >> 6; + return hash; +} + +#define stbiw__zlib_flush() (out = stbiw__zlib_flushf(out, &bitbuf, &bitcount)) +#define stbiw__zlib_add(code, codebits) \ + (bitbuf |= (code) << bitcount, bitcount += (codebits), stbiw__zlib_flush()) +#define stbiw__zlib_huffa(b, c) stbiw__zlib_add(stbiw__zlib_bitrev(b, c), c) +// default huffman tables +#define stbiw__zlib_huff1(n) stbiw__zlib_huffa(0x30 + (n), 8) +#define stbiw__zlib_huff2(n) stbiw__zlib_huffa(0x190 + (n) - 144, 9) +#define stbiw__zlib_huff3(n) stbiw__zlib_huffa(0 + (n) - 256, 7) +#define stbiw__zlib_huff4(n) stbiw__zlib_huffa(0xc0 + (n) - 280, 8) +#define stbiw__zlib_huff(n) \ + ((n) <= 143 ? stbiw__zlib_huff1(n) \ + : (n) <= 255 ? stbiw__zlib_huff2(n) \ + : (n) <= 279 ? stbiw__zlib_huff3(n) \ + : stbiw__zlib_huff4(n)) +#define stbiw__zlib_huffb(n) \ + ((n) <= 143 ? stbiw__zlib_huff1(n) : stbiw__zlib_huff2(n)) + +#define stbiw__ZHASH 16384 + +#endif // STBIW_ZLIB_COMPRESS + +STBIWDEF unsigned char *stbi_zlib_compress(unsigned char *data, int data_len, + int *out_len, int quality) { +#ifdef STBIW_ZLIB_COMPRESS + // user provided a zlib compress implementation, use that + return STBIW_ZLIB_COMPRESS(data, data_len, out_len, quality); +#else // use builtin + static unsigned short lengthc[] = { + 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, + 31, 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 259}; + static unsigned char lengtheb[] = {0, 0, 0, 0, 0, 0, 0, 0, 1, 1, + 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, + 4, 4, 4, 4, 5, 5, 5, 5, 0}; + static unsigned short distc[] = { + 1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, + 49, 65, 97, 129, 193, 257, 385, 513, 769, 1025, 1537, + 2049, 3073, 4097, 6145, 8193, 12289, 16385, 24577, 32768}; + static unsigned char disteb[] = {0, 0, 0, 0, 1, 1, 2, 2, 3, 3, + 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, + 9, 9, 10, 10, 11, 11, 12, 12, 13, 13}; + unsigned int bitbuf = 0; + int i, j, bitcount = 0; + unsigned char *out = NULL; + unsigned char ***hash_table = + (unsigned char ***)STBIW_MALLOC(stbiw__ZHASH * sizeof(unsigned char **)); + if (hash_table == NULL) + return NULL; + if (quality < 5) + quality = 5; + + stbiw__sbpush(out, 0x78); // DEFLATE 32K window + stbiw__sbpush(out, 0x5e); // FLEVEL = 1 + stbiw__zlib_add(1, 1); // BFINAL = 1 + stbiw__zlib_add(1, 2); // BTYPE = 1 -- fixed huffman + + for (i = 0; i < stbiw__ZHASH; ++i) + hash_table[i] = NULL; + + i = 0; + while (i < data_len - 3) { + // hash next 3 bytes of data to be compressed + int h = stbiw__zhash(data + i) & (stbiw__ZHASH - 1), best = 3; + unsigned char *bestloc = 0; + unsigned char **hlist = hash_table[h]; + int n = stbiw__sbcount(hlist); + for (j = 0; j < n; ++j) { + if (hlist[j] - data > i - 32768) { // if entry lies within window + int d = stbiw__zlib_countm(hlist[j], data + i, data_len - i); + if (d >= best) { + best = d; + bestloc = hlist[j]; + } + } + } + // when hash table entry is too long, delete half the entries + if (hash_table[h] && stbiw__sbn(hash_table[h]) == 2 * quality) { + STBIW_MEMMOVE(hash_table[h], hash_table[h] + quality, + sizeof(hash_table[h][0]) * quality); + stbiw__sbn(hash_table[h]) = quality; + } + stbiw__sbpush(hash_table[h], data + i); + + if (bestloc) { + // "lazy matching" - check match at *next* byte, and if it's better, do + // cur byte as literal + h = stbiw__zhash(data + i + 1) & (stbiw__ZHASH - 1); + hlist = hash_table[h]; + n = stbiw__sbcount(hlist); + for (j = 0; j < n; ++j) { + if (hlist[j] - data > i - 32767) { + int e = stbiw__zlib_countm(hlist[j], data + i + 1, data_len - i - 1); + if (e > best) { // if next match is better, bail on current match + bestloc = NULL; + break; + } + } + } + } + + if (bestloc) { + int d = (int)(data + i - bestloc); // distance back + STBIW_ASSERT(d <= 32767 && best <= 258); + for (j = 0; best > lengthc[j + 1] - 1; ++j) + ; + stbiw__zlib_huff(j + 257); + if (lengtheb[j]) + stbiw__zlib_add(best - lengthc[j], lengtheb[j]); + for (j = 0; d > distc[j + 1] - 1; ++j) + ; + stbiw__zlib_add(stbiw__zlib_bitrev(j, 5), 5); + if (disteb[j]) + stbiw__zlib_add(d - distc[j], disteb[j]); + i += best; + } else { + stbiw__zlib_huffb(data[i]); + ++i; + } + } + // write out final bytes + for (; i < data_len; ++i) + stbiw__zlib_huffb(data[i]); + stbiw__zlib_huff(256); // end of block + // pad with 0 bits to byte boundary + while (bitcount) + stbiw__zlib_add(0, 1); + + for (i = 0; i < stbiw__ZHASH; ++i) + (void)stbiw__sbfree(hash_table[i]); + STBIW_FREE(hash_table); + + // store uncompressed instead if compression was worse + if (stbiw__sbn(out) > data_len + 2 + ((data_len + 32766) / 32767) * 5) { + stbiw__sbn(out) = 2; // truncate to DEFLATE 32K window and FLEVEL = 1 + for (j = 0; j < data_len;) { + int blocklen = data_len - j; + if (blocklen > 32767) + blocklen = 32767; + stbiw__sbpush(out, + data_len - j == + blocklen); // BFINAL = ?, BTYPE = 0 -- no compression + stbiw__sbpush(out, STBIW_UCHAR(blocklen)); // LEN + stbiw__sbpush(out, STBIW_UCHAR(blocklen >> 8)); + stbiw__sbpush(out, STBIW_UCHAR(~blocklen)); // NLEN + stbiw__sbpush(out, STBIW_UCHAR(~blocklen >> 8)); + memcpy(out + stbiw__sbn(out), data + j, blocklen); + stbiw__sbn(out) += blocklen; + j += blocklen; + } + } + + { + // compute adler32 on input + unsigned int s1 = 1, s2 = 0; + int blocklen = (int)(data_len % 5552); + j = 0; + while (j < data_len) { + for (i = 0; i < blocklen; ++i) { + s1 += data[j + i]; + s2 += s1; + } + s1 %= 65521; + s2 %= 65521; + j += blocklen; + blocklen = 5552; + } + stbiw__sbpush(out, STBIW_UCHAR(s2 >> 8)); + stbiw__sbpush(out, STBIW_UCHAR(s2)); + stbiw__sbpush(out, STBIW_UCHAR(s1 >> 8)); + stbiw__sbpush(out, STBIW_UCHAR(s1)); + } + *out_len = stbiw__sbn(out); + // make returned pointer freeable + STBIW_MEMMOVE(stbiw__sbraw(out), out, *out_len); + return (unsigned char *)stbiw__sbraw(out); +#endif // STBIW_ZLIB_COMPRESS +} + +static unsigned int stbiw__crc32(unsigned char *buffer, int len) { +#ifdef STBIW_CRC32 + return STBIW_CRC32(buffer, len); +#else + static unsigned int crc_table[256] = { + 0x00000000, 0x77073096, 0xEE0E612C, 0x990951BA, 0x076DC419, 0x706AF48F, + 0xE963A535, 0x9E6495A3, 0x0eDB8832, 0x79DCB8A4, 0xE0D5E91E, 0x97D2D988, + 0x09B64C2B, 0x7EB17CBD, 0xE7B82D07, 0x90BF1D91, 0x1DB71064, 0x6AB020F2, + 0xF3B97148, 0x84BE41DE, 0x1ADAD47D, 0x6DDDE4EB, 0xF4D4B551, 0x83D385C7, + 0x136C9856, 0x646BA8C0, 0xFD62F97A, 0x8A65C9EC, 0x14015C4F, 0x63066CD9, + 0xFA0F3D63, 0x8D080DF5, 0x3B6E20C8, 0x4C69105E, 0xD56041E4, 0xA2677172, + 0x3C03E4D1, 0x4B04D447, 0xD20D85FD, 0xA50AB56B, 0x35B5A8FA, 0x42B2986C, + 0xDBBBC9D6, 0xACBCF940, 0x32D86CE3, 0x45DF5C75, 0xDCD60DCF, 0xABD13D59, + 0x26D930AC, 0x51DE003A, 0xC8D75180, 0xBFD06116, 0x21B4F4B5, 0x56B3C423, + 0xCFBA9599, 0xB8BDA50F, 0x2802B89E, 0x5F058808, 0xC60CD9B2, 0xB10BE924, + 0x2F6F7C87, 0x58684C11, 0xC1611DAB, 0xB6662D3D, 0x76DC4190, 0x01DB7106, + 0x98D220BC, 0xEFD5102A, 0x71B18589, 0x06B6B51F, 0x9FBFE4A5, 0xE8B8D433, + 0x7807C9A2, 0x0F00F934, 0x9609A88E, 0xE10E9818, 0x7F6A0DBB, 0x086D3D2D, + 0x91646C97, 0xE6635C01, 0x6B6B51F4, 0x1C6C6162, 0x856530D8, 0xF262004E, + 0x6C0695ED, 0x1B01A57B, 0x8208F4C1, 0xF50FC457, 0x65B0D9C6, 0x12B7E950, + 0x8BBEB8EA, 0xFCB9887C, 0x62DD1DDF, 0x15DA2D49, 0x8CD37CF3, 0xFBD44C65, + 0x4DB26158, 0x3AB551CE, 0xA3BC0074, 0xD4BB30E2, 0x4ADFA541, 0x3DD895D7, + 0xA4D1C46D, 0xD3D6F4FB, 0x4369E96A, 0x346ED9FC, 0xAD678846, 0xDA60B8D0, + 0x44042D73, 0x33031DE5, 0xAA0A4C5F, 0xDD0D7CC9, 0x5005713C, 0x270241AA, + 0xBE0B1010, 0xC90C2086, 0x5768B525, 0x206F85B3, 0xB966D409, 0xCE61E49F, + 0x5EDEF90E, 0x29D9C998, 0xB0D09822, 0xC7D7A8B4, 0x59B33D17, 0x2EB40D81, + 0xB7BD5C3B, 0xC0BA6CAD, 0xEDB88320, 0x9ABFB3B6, 0x03B6E20C, 0x74B1D29A, + 0xEAD54739, 0x9DD277AF, 0x04DB2615, 0x73DC1683, 0xE3630B12, 0x94643B84, + 0x0D6D6A3E, 0x7A6A5AA8, 0xE40ECF0B, 0x9309FF9D, 0x0A00AE27, 0x7D079EB1, + 0xF00F9344, 0x8708A3D2, 0x1E01F268, 0x6906C2FE, 0xF762575D, 0x806567CB, + 0x196C3671, 0x6E6B06E7, 0xFED41B76, 0x89D32BE0, 0x10DA7A5A, 0x67DD4ACC, + 0xF9B9DF6F, 0x8EBEEFF9, 0x17B7BE43, 0x60B08ED5, 0xD6D6A3E8, 0xA1D1937E, + 0x38D8C2C4, 0x4FDFF252, 0xD1BB67F1, 0xA6BC5767, 0x3FB506DD, 0x48B2364B, + 0xD80D2BDA, 0xAF0A1B4C, 0x36034AF6, 0x41047A60, 0xDF60EFC3, 0xA867DF55, + 0x316E8EEF, 0x4669BE79, 0xCB61B38C, 0xBC66831A, 0x256FD2A0, 0x5268E236, + 0xCC0C7795, 0xBB0B4703, 0x220216B9, 0x5505262F, 0xC5BA3BBE, 0xB2BD0B28, + 0x2BB45A92, 0x5CB36A04, 0xC2D7FFA7, 0xB5D0CF31, 0x2CD99E8B, 0x5BDEAE1D, + 0x9B64C2B0, 0xEC63F226, 0x756AA39C, 0x026D930A, 0x9C0906A9, 0xEB0E363F, + 0x72076785, 0x05005713, 0x95BF4A82, 0xE2B87A14, 0x7BB12BAE, 0x0CB61B38, + 0x92D28E9B, 0xE5D5BE0D, 0x7CDCEFB7, 0x0BDBDF21, 0x86D3D2D4, 0xF1D4E242, + 0x68DDB3F8, 0x1FDA836E, 0x81BE16CD, 0xF6B9265B, 0x6FB077E1, 0x18B74777, + 0x88085AE6, 0xFF0F6A70, 0x66063BCA, 0x11010B5C, 0x8F659EFF, 0xF862AE69, + 0x616BFFD3, 0x166CCF45, 0xA00AE278, 0xD70DD2EE, 0x4E048354, 0x3903B3C2, + 0xA7672661, 0xD06016F7, 0x4969474D, 0x3E6E77DB, 0xAED16A4A, 0xD9D65ADC, + 0x40DF0B66, 0x37D83BF0, 0xA9BCAE53, 0xDEBB9EC5, 0x47B2CF7F, 0x30B5FFE9, + 0xBDBDF21C, 0xCABAC28A, 0x53B39330, 0x24B4A3A6, 0xBAD03605, 0xCDD70693, + 0x54DE5729, 0x23D967BF, 0xB3667A2E, 0xC4614AB8, 0x5D681B02, 0x2A6F2B94, + 0xB40BBE37, 0xC30C8EA1, 0x5A05DF1B, 0x2D02EF8D}; + + unsigned int crc = ~0u; + int i; + for (i = 0; i < len; ++i) + crc = (crc >> 8) ^ crc_table[buffer[i] ^ (crc & 0xff)]; + return ~crc; +#endif +} + +#define stbiw__wpng4(o, a, b, c, d) \ + ((o)[0] = STBIW_UCHAR(a), (o)[1] = STBIW_UCHAR(b), (o)[2] = STBIW_UCHAR(c), \ + (o)[3] = STBIW_UCHAR(d), (o) += 4) +#define stbiw__wp32(data, v) \ + stbiw__wpng4(data, (v) >> 24, (v) >> 16, (v) >> 8, (v)); +#define stbiw__wptag(data, s) stbiw__wpng4(data, s[0], s[1], s[2], s[3]) + +static void stbiw__wpcrc(unsigned char **data, int len) { + unsigned int crc = stbiw__crc32(*data - len - 4, len + 4); + stbiw__wp32(*data, crc); +} + +static unsigned char stbiw__paeth(int a, int b, int c) { + int p = a + b - c, pa = abs(p - a), pb = abs(p - b), pc = abs(p - c); + if (pa <= pb && pa <= pc) + return STBIW_UCHAR(a); + if (pb <= pc) + return STBIW_UCHAR(b); + return STBIW_UCHAR(c); +} + +// @OPTIMIZE: provide an option that always forces left-predict or paeth predict +static void stbiw__encode_png_line(unsigned char *pixels, int stride_bytes, + int width, int height, int y, int n, + int filter_type, signed char *line_buffer) { + static int mapping[] = {0, 1, 2, 3, 4}; + static int firstmap[] = {0, 1, 0, 5, 6}; + int *mymap = (y != 0) ? mapping : firstmap; + int i; + int type = mymap[filter_type]; + unsigned char *z = + pixels + + stride_bytes * (stbi__flip_vertically_on_write ? height - 1 - y : y); + int signed_stride = + stbi__flip_vertically_on_write ? -stride_bytes : stride_bytes; + + if (type == 0) { + memcpy(line_buffer, z, width * n); + return; + } + + // first loop isn't optimized since it's just one pixel + for (i = 0; i < n; ++i) { + switch (type) { + case 1: + line_buffer[i] = z[i]; + break; + case 2: + line_buffer[i] = z[i] - z[i - signed_stride]; + break; + case 3: + line_buffer[i] = z[i] - (z[i - signed_stride] >> 1); + break; + case 4: + line_buffer[i] = + (signed char)(z[i] - stbiw__paeth(0, z[i - signed_stride], 0)); + break; + case 5: + line_buffer[i] = z[i]; + break; + case 6: + line_buffer[i] = z[i]; + break; + } + } + switch (type) { + case 1: + for (i = n; i < width * n; ++i) + line_buffer[i] = z[i] - z[i - n]; + break; + case 2: + for (i = n; i < width * n; ++i) + line_buffer[i] = z[i] - z[i - signed_stride]; + break; + case 3: + for (i = n; i < width * n; ++i) + line_buffer[i] = z[i] - ((z[i - n] + z[i - signed_stride]) >> 1); + break; + case 4: + for (i = n; i < width * n; ++i) + line_buffer[i] = z[i] - stbiw__paeth(z[i - n], z[i - signed_stride], + z[i - signed_stride - n]); + break; + case 5: + for (i = n; i < width * n; ++i) + line_buffer[i] = z[i] - (z[i - n] >> 1); + break; + case 6: + for (i = n; i < width * n; ++i) + line_buffer[i] = z[i] - stbiw__paeth(z[i - n], 0, 0); + break; + } +} + +STBIWDEF unsigned char *stbi_write_png_to_mem(const unsigned char *pixels, + int stride_bytes, int x, int y, + int n, int *out_len) { + int force_filter = stbi_write_force_png_filter; + int ctype[5] = {-1, 0, 4, 2, 6}; + unsigned char sig[8] = {137, 80, 78, 71, 13, 10, 26, 10}; + unsigned char *out, *o, *filt, *zlib; + signed char *line_buffer; + int j, zlen; + + if (stride_bytes == 0) + stride_bytes = x * n; + + if (force_filter >= 5) { + force_filter = -1; + } + + filt = (unsigned char *)STBIW_MALLOC((x * n + 1) * y); + if (!filt) + return 0; + line_buffer = (signed char *)STBIW_MALLOC(x * n); + if (!line_buffer) { + STBIW_FREE(filt); + return 0; + } + for (j = 0; j < y; ++j) { + int filter_type; + if (force_filter > -1) { + filter_type = force_filter; + stbiw__encode_png_line((unsigned char *)(pixels), stride_bytes, x, y, j, + n, force_filter, line_buffer); + } else { // Estimate the best filter by running through all of them: + int best_filter = 0, best_filter_val = 0x7fffffff, est, i; + for (filter_type = 0; filter_type < 5; filter_type++) { + stbiw__encode_png_line((unsigned char *)(pixels), stride_bytes, x, y, j, + n, filter_type, line_buffer); + + // Estimate the entropy of the line using this filter; the less, the + // better. + est = 0; + for (i = 0; i < x * n; ++i) { + est += abs((signed char)line_buffer[i]); + } + if (est < best_filter_val) { + best_filter_val = est; + best_filter = filter_type; + } + } + if (filter_type != best_filter) { // If the last iteration already got us + // the best filter, don't redo it + stbiw__encode_png_line((unsigned char *)(pixels), stride_bytes, x, y, j, + n, best_filter, line_buffer); + filter_type = best_filter; + } + } + // when we get here, filter_type contains the filter type, and line_buffer + // contains the data + filt[j * (x * n + 1)] = (unsigned char)filter_type; + STBIW_MEMMOVE(filt + j * (x * n + 1) + 1, line_buffer, x * n); + } + STBIW_FREE(line_buffer); + zlib = stbi_zlib_compress(filt, y * (x * n + 1), &zlen, + stbi_write_png_compression_level); + STBIW_FREE(filt); + if (!zlib) + return 0; + + // each tag requires 12 bytes of overhead + out = (unsigned char *)STBIW_MALLOC(8 + 12 + 13 + 12 + zlen + 12); + if (!out) + return 0; + *out_len = 8 + 12 + 13 + 12 + zlen + 12; + + o = out; + STBIW_MEMMOVE(o, sig, 8); + o += 8; + stbiw__wp32(o, 13); // header length + stbiw__wptag(o, "IHDR"); + stbiw__wp32(o, x); + stbiw__wp32(o, y); + *o++ = 8; + *o++ = STBIW_UCHAR(ctype[n]); + *o++ = 0; + *o++ = 0; + *o++ = 0; + stbiw__wpcrc(&o, 13); + + stbiw__wp32(o, zlen); + stbiw__wptag(o, "IDAT"); + STBIW_MEMMOVE(o, zlib, zlen); + o += zlen; + STBIW_FREE(zlib); + stbiw__wpcrc(&o, zlen); + + stbiw__wp32(o, 0); + stbiw__wptag(o, "IEND"); + stbiw__wpcrc(&o, 0); + + STBIW_ASSERT(o == out + *out_len); + + return out; +} + +#ifndef STBI_WRITE_NO_STDIO +STBIWDEF int stbi_write_png(char const *filename, int x, int y, int comp, + const void *data, int stride_bytes) { + FILE *f; + int len; + unsigned char *png = stbi_write_png_to_mem((const unsigned char *)data, + stride_bytes, x, y, comp, &len); + if (png == NULL) + return 0; + + f = stbiw__fopen(filename, "wb"); + if (!f) { + STBIW_FREE(png); + return 0; + } + fwrite(png, 1, len, f); + fclose(f); + STBIW_FREE(png); + return 1; +} +#endif + +STBIWDEF int stbi_write_png_to_func(stbi_write_func *func, void *context, int x, + int y, int comp, const void *data, + int stride_bytes) { + int len; + unsigned char *png = stbi_write_png_to_mem((const unsigned char *)data, + stride_bytes, x, y, comp, &len); + if (png == NULL) + return 0; + func(context, png, len); + STBIW_FREE(png); + return 1; +} + +/* *************************************************************************** + * + * JPEG writer + * + * This is based on Jon Olick's jo_jpeg.cpp: + * public domain Simple, Minimalistic JPEG writer - + * http://www.jonolick.com/code.html + */ + +static const unsigned char stbiw__jpg_ZigZag[] = { + 0, 1, 5, 6, 14, 15, 27, 28, 2, 4, 7, 13, 16, 26, 29, 42, + 3, 8, 12, 17, 25, 30, 41, 43, 9, 11, 18, 24, 31, 40, 44, 53, + 10, 19, 23, 32, 39, 45, 52, 54, 20, 22, 33, 38, 46, 51, 55, 60, + 21, 34, 37, 47, 50, 56, 59, 61, 35, 36, 48, 49, 57, 58, 62, 63}; + +static void stbiw__jpg_writeBits(stbi__write_context *s, int *bitBufP, + int *bitCntP, const unsigned short *bs) { + int bitBuf = *bitBufP, bitCnt = *bitCntP; + bitCnt += bs[1]; + bitBuf |= bs[0] << (24 - bitCnt); + while (bitCnt >= 8) { + unsigned char c = (bitBuf >> 16) & 255; + stbiw__putc(s, c); + if (c == 255) { + stbiw__putc(s, 0); + } + bitBuf <<= 8; + bitCnt -= 8; + } + *bitBufP = bitBuf; + *bitCntP = bitCnt; +} + +static void stbiw__jpg_DCT(float *d0p, float *d1p, float *d2p, float *d3p, + float *d4p, float *d5p, float *d6p, float *d7p) { + float d0 = *d0p, d1 = *d1p, d2 = *d2p, d3 = *d3p, d4 = *d4p, d5 = *d5p, + d6 = *d6p, d7 = *d7p; + float z1, z2, z3, z4, z5, z11, z13; + + float tmp0 = d0 + d7; + float tmp7 = d0 - d7; + float tmp1 = d1 + d6; + float tmp6 = d1 - d6; + float tmp2 = d2 + d5; + float tmp5 = d2 - d5; + float tmp3 = d3 + d4; + float tmp4 = d3 - d4; + + // Even part + float tmp10 = tmp0 + tmp3; // phase 2 + float tmp13 = tmp0 - tmp3; + float tmp11 = tmp1 + tmp2; + float tmp12 = tmp1 - tmp2; + + d0 = tmp10 + tmp11; // phase 3 + d4 = tmp10 - tmp11; + + z1 = (tmp12 + tmp13) * 0.707106781f; // c4 + d2 = tmp13 + z1; // phase 5 + d6 = tmp13 - z1; + + // Odd part + tmp10 = tmp4 + tmp5; // phase 2 + tmp11 = tmp5 + tmp6; + tmp12 = tmp6 + tmp7; + + // The rotator is modified from fig 4-8 to avoid extra negations. + z5 = (tmp10 - tmp12) * 0.382683433f; // c6 + z2 = tmp10 * 0.541196100f + z5; // c2-c6 + z4 = tmp12 * 1.306562965f + z5; // c2+c6 + z3 = tmp11 * 0.707106781f; // c4 + + z11 = tmp7 + z3; // phase 5 + z13 = tmp7 - z3; + + *d5p = z13 + z2; // phase 6 + *d3p = z13 - z2; + *d1p = z11 + z4; + *d7p = z11 - z4; + + *d0p = d0; + *d2p = d2; + *d4p = d4; + *d6p = d6; +} + +static void stbiw__jpg_calcBits(int val, unsigned short bits[2]) { + int tmp1 = val < 0 ? -val : val; + val = val < 0 ? val - 1 : val; + bits[1] = 1; + while (tmp1 >>= 1) { + ++bits[1]; + } + bits[0] = val & ((1 << bits[1]) - 1); +} + +static int stbiw__jpg_processDU(stbi__write_context *s, int *bitBuf, + int *bitCnt, float *CDU, int du_stride, + float *fdtbl, int DC, + const unsigned short HTDC[256][2], + const unsigned short HTAC[256][2]) { + const unsigned short EOB[2] = {HTAC[0x00][0], HTAC[0x00][1]}; + const unsigned short M16zeroes[2] = {HTAC[0xF0][0], HTAC[0xF0][1]}; + int dataOff, i, j, n, diff, end0pos, x, y; + int DU[64]; + + // DCT rows + for (dataOff = 0, n = du_stride * 8; dataOff < n; dataOff += du_stride) { + stbiw__jpg_DCT(&CDU[dataOff], &CDU[dataOff + 1], &CDU[dataOff + 2], + &CDU[dataOff + 3], &CDU[dataOff + 4], &CDU[dataOff + 5], + &CDU[dataOff + 6], &CDU[dataOff + 7]); + } + // DCT columns + for (dataOff = 0; dataOff < 8; ++dataOff) { + stbiw__jpg_DCT(&CDU[dataOff], &CDU[dataOff + du_stride], + &CDU[dataOff + du_stride * 2], &CDU[dataOff + du_stride * 3], + &CDU[dataOff + du_stride * 4], &CDU[dataOff + du_stride * 5], + &CDU[dataOff + du_stride * 6], + &CDU[dataOff + du_stride * 7]); + } + // Quantize/descale/zigzag the coefficients + for (y = 0, j = 0; y < 8; ++y) { + for (x = 0; x < 8; ++x, ++j) { + float v; + i = y * du_stride + x; + v = CDU[i] * fdtbl[j]; + // DU[stbiw__jpg_ZigZag[j]] = (int)(v < 0 ? ceilf(v - 0.5f) : floorf(v + + // 0.5f)); ceilf() and floorf() are C99, not C89, but I /think/ they're + // not needed here anyway? + DU[stbiw__jpg_ZigZag[j]] = (int)(v < 0 ? v - 0.5f : v + 0.5f); + } + } + + // Encode DC + diff = DU[0] - DC; + if (diff == 0) { + stbiw__jpg_writeBits(s, bitBuf, bitCnt, HTDC[0]); + } else { + unsigned short bits[2]; + stbiw__jpg_calcBits(diff, bits); + stbiw__jpg_writeBits(s, bitBuf, bitCnt, HTDC[bits[1]]); + stbiw__jpg_writeBits(s, bitBuf, bitCnt, bits); + } + // Encode ACs + end0pos = 63; + for (; (end0pos > 0) && (DU[end0pos] == 0); --end0pos) { + } + // end0pos = first element in reverse order !=0 + if (end0pos == 0) { + stbiw__jpg_writeBits(s, bitBuf, bitCnt, EOB); + return DU[0]; + } + for (i = 1; i <= end0pos; ++i) { + int startpos = i; + int nrzeroes; + unsigned short bits[2]; + for (; DU[i] == 0 && i <= end0pos; ++i) { + } + nrzeroes = i - startpos; + if (nrzeroes >= 16) { + int lng = nrzeroes >> 4; + int nrmarker; + for (nrmarker = 1; nrmarker <= lng; ++nrmarker) + stbiw__jpg_writeBits(s, bitBuf, bitCnt, M16zeroes); + nrzeroes &= 15; + } + stbiw__jpg_calcBits(DU[i], bits); + stbiw__jpg_writeBits(s, bitBuf, bitCnt, HTAC[(nrzeroes << 4) + bits[1]]); + stbiw__jpg_writeBits(s, bitBuf, bitCnt, bits); + } + if (end0pos != 63) { + stbiw__jpg_writeBits(s, bitBuf, bitCnt, EOB); + } + return DU[0]; +} + +static int stbi_write_jpg_core(stbi__write_context *s, int width, int height, + int comp, const void *data, int quality) { + // Constants that don't pollute global namespace + static const unsigned char std_dc_luminance_nrcodes[] = { + 0, 0, 1, 5, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0}; + static const unsigned char std_dc_luminance_values[] = {0, 1, 2, 3, 4, 5, + 6, 7, 8, 9, 10, 11}; + static const unsigned char std_ac_luminance_nrcodes[] = { + 0, 0, 2, 1, 3, 3, 2, 4, 3, 5, 5, 4, 4, 0, 0, 1, 0x7d}; + static const unsigned char std_ac_luminance_values[] = { + 0x01, 0x02, 0x03, 0x00, 0x04, 0x11, 0x05, 0x12, 0x21, 0x31, 0x41, 0x06, + 0x13, 0x51, 0x61, 0x07, 0x22, 0x71, 0x14, 0x32, 0x81, 0x91, 0xa1, 0x08, + 0x23, 0x42, 0xb1, 0xc1, 0x15, 0x52, 0xd1, 0xf0, 0x24, 0x33, 0x62, 0x72, + 0x82, 0x09, 0x0a, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x25, 0x26, 0x27, 0x28, + 0x29, 0x2a, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x43, 0x44, 0x45, + 0x46, 0x47, 0x48, 0x49, 0x4a, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, + 0x5a, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x73, 0x74, 0x75, + 0x76, 0x77, 0x78, 0x79, 0x7a, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, + 0x8a, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97, 0x98, 0x99, 0x9a, 0xa2, 0xa3, + 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, + 0xb7, 0xb8, 0xb9, 0xba, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, + 0xca, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xe1, 0xe2, + 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, 0xe8, 0xe9, 0xea, 0xf1, 0xf2, 0xf3, 0xf4, + 0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa}; + static const unsigned char std_dc_chrominance_nrcodes[] = { + 0, 0, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0}; + static const unsigned char std_dc_chrominance_values[] = {0, 1, 2, 3, 4, 5, + 6, 7, 8, 9, 10, 11}; + static const unsigned char std_ac_chrominance_nrcodes[] = { + 0, 0, 2, 1, 2, 4, 4, 3, 4, 7, 5, 4, 4, 0, 1, 2, 0x77}; + static const unsigned char std_ac_chrominance_values[] = { + 0x00, 0x01, 0x02, 0x03, 0x11, 0x04, 0x05, 0x21, 0x31, 0x06, 0x12, 0x41, + 0x51, 0x07, 0x61, 0x71, 0x13, 0x22, 0x32, 0x81, 0x08, 0x14, 0x42, 0x91, + 0xa1, 0xb1, 0xc1, 0x09, 0x23, 0x33, 0x52, 0xf0, 0x15, 0x62, 0x72, 0xd1, + 0x0a, 0x16, 0x24, 0x34, 0xe1, 0x25, 0xf1, 0x17, 0x18, 0x19, 0x1a, 0x26, + 0x27, 0x28, 0x29, 0x2a, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x43, 0x44, + 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, + 0x59, 0x5a, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x73, 0x74, + 0x75, 0x76, 0x77, 0x78, 0x79, 0x7a, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, + 0x88, 0x89, 0x8a, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97, 0x98, 0x99, 0x9a, + 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xb2, 0xb3, 0xb4, + 0xb5, 0xb6, 0xb7, 0xb8, 0xb9, 0xba, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, + 0xc8, 0xc9, 0xca, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, 0xd8, 0xd9, 0xda, + 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, 0xe8, 0xe9, 0xea, 0xf2, 0xf3, 0xf4, + 0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa}; + // Huffman tables + static const unsigned short YDC_HT[256][2] = { + {0, 2}, {2, 3}, {3, 3}, {4, 3}, {5, 3}, {6, 3}, + {14, 4}, {30, 5}, {62, 6}, {126, 7}, {254, 8}, {510, 9}}; + static const unsigned short UVDC_HT[256][2] = { + {0, 2}, {1, 2}, {2, 2}, {6, 3}, {14, 4}, {30, 5}, + {62, 6}, {126, 7}, {254, 8}, {510, 9}, {1022, 10}, {2046, 11}}; + static const unsigned short YAC_HT[256][2] = { + {10, 4}, {0, 2}, {1, 2}, {4, 3}, {11, 4}, + {26, 5}, {120, 7}, {248, 8}, {1014, 10}, {65410, 16}, + {65411, 16}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, + {0, 0}, {0, 0}, {12, 4}, {27, 5}, {121, 7}, + {502, 9}, {2038, 11}, {65412, 16}, {65413, 16}, {65414, 16}, + {65415, 16}, {65416, 16}, {0, 0}, {0, 0}, {0, 0}, + {0, 0}, {0, 0}, {0, 0}, {28, 5}, {249, 8}, + {1015, 10}, {4084, 12}, {65417, 16}, {65418, 16}, {65419, 16}, + {65420, 16}, {65421, 16}, {65422, 16}, {0, 0}, {0, 0}, + {0, 0}, {0, 0}, {0, 0}, {0, 0}, {58, 6}, + {503, 9}, {4085, 12}, {65423, 16}, {65424, 16}, {65425, 16}, + {65426, 16}, {65427, 16}, {65428, 16}, {65429, 16}, {0, 0}, + {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, + {59, 6}, {1016, 10}, {65430, 16}, {65431, 16}, {65432, 16}, + {65433, 16}, {65434, 16}, {65435, 16}, {65436, 16}, {65437, 16}, + {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, + {0, 0}, {122, 7}, {2039, 11}, {65438, 16}, {65439, 16}, + {65440, 16}, {65441, 16}, {65442, 16}, {65443, 16}, {65444, 16}, + {65445, 16}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, + {0, 0}, {0, 0}, {123, 7}, {4086, 12}, {65446, 16}, + {65447, 16}, {65448, 16}, {65449, 16}, {65450, 16}, {65451, 16}, + {65452, 16}, {65453, 16}, {0, 0}, {0, 0}, {0, 0}, + {0, 0}, {0, 0}, {0, 0}, {250, 8}, {4087, 12}, + {65454, 16}, {65455, 16}, {65456, 16}, {65457, 16}, {65458, 16}, + {65459, 16}, {65460, 16}, {65461, 16}, {0, 0}, {0, 0}, + {0, 0}, {0, 0}, {0, 0}, {0, 0}, {504, 9}, + {32704, 15}, {65462, 16}, {65463, 16}, {65464, 16}, {65465, 16}, + {65466, 16}, {65467, 16}, {65468, 16}, {65469, 16}, {0, 0}, + {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, + {505, 9}, {65470, 16}, {65471, 16}, {65472, 16}, {65473, 16}, + {65474, 16}, {65475, 16}, {65476, 16}, {65477, 16}, {65478, 16}, + {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, + {0, 0}, {506, 9}, {65479, 16}, {65480, 16}, {65481, 16}, + {65482, 16}, {65483, 16}, {65484, 16}, {65485, 16}, {65486, 16}, + {65487, 16}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, + {0, 0}, {0, 0}, {1017, 10}, {65488, 16}, {65489, 16}, + {65490, 16}, {65491, 16}, {65492, 16}, {65493, 16}, {65494, 16}, + {65495, 16}, {65496, 16}, {0, 0}, {0, 0}, {0, 0}, + {0, 0}, {0, 0}, {0, 0}, {1018, 10}, {65497, 16}, + {65498, 16}, {65499, 16}, {65500, 16}, {65501, 16}, {65502, 16}, + {65503, 16}, {65504, 16}, {65505, 16}, {0, 0}, {0, 0}, + {0, 0}, {0, 0}, {0, 0}, {0, 0}, {2040, 11}, + {65506, 16}, {65507, 16}, {65508, 16}, {65509, 16}, {65510, 16}, + {65511, 16}, {65512, 16}, {65513, 16}, {65514, 16}, {0, 0}, + {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, + {65515, 16}, {65516, 16}, {65517, 16}, {65518, 16}, {65519, 16}, + {65520, 16}, {65521, 16}, {65522, 16}, {65523, 16}, {65524, 16}, + {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, + {2041, 11}, {65525, 16}, {65526, 16}, {65527, 16}, {65528, 16}, + {65529, 16}, {65530, 16}, {65531, 16}, {65532, 16}, {65533, 16}, + {65534, 16}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, + {0, 0}}; + static const unsigned short UVAC_HT[256][2] = { + {0, 2}, {1, 2}, {4, 3}, {10, 4}, {24, 5}, + {25, 5}, {56, 6}, {120, 7}, {500, 9}, {1014, 10}, + {4084, 12}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, + {0, 0}, {0, 0}, {11, 4}, {57, 6}, {246, 8}, + {501, 9}, {2038, 11}, {4085, 12}, {65416, 16}, {65417, 16}, + {65418, 16}, {65419, 16}, {0, 0}, {0, 0}, {0, 0}, + {0, 0}, {0, 0}, {0, 0}, {26, 5}, {247, 8}, + {1015, 10}, {4086, 12}, {32706, 15}, {65420, 16}, {65421, 16}, + {65422, 16}, {65423, 16}, {65424, 16}, {0, 0}, {0, 0}, + {0, 0}, {0, 0}, {0, 0}, {0, 0}, {27, 5}, + {248, 8}, {1016, 10}, {4087, 12}, {65425, 16}, {65426, 16}, + {65427, 16}, {65428, 16}, {65429, 16}, {65430, 16}, {0, 0}, + {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, + {58, 6}, {502, 9}, {65431, 16}, {65432, 16}, {65433, 16}, + {65434, 16}, {65435, 16}, {65436, 16}, {65437, 16}, {65438, 16}, + {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, + {0, 0}, {59, 6}, {1017, 10}, {65439, 16}, {65440, 16}, + {65441, 16}, {65442, 16}, {65443, 16}, {65444, 16}, {65445, 16}, + {65446, 16}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, + {0, 0}, {0, 0}, {121, 7}, {2039, 11}, {65447, 16}, + {65448, 16}, {65449, 16}, {65450, 16}, {65451, 16}, {65452, 16}, + {65453, 16}, {65454, 16}, {0, 0}, {0, 0}, {0, 0}, + {0, 0}, {0, 0}, {0, 0}, {122, 7}, {2040, 11}, + {65455, 16}, {65456, 16}, {65457, 16}, {65458, 16}, {65459, 16}, + {65460, 16}, {65461, 16}, {65462, 16}, {0, 0}, {0, 0}, + {0, 0}, {0, 0}, {0, 0}, {0, 0}, {249, 8}, + {65463, 16}, {65464, 16}, {65465, 16}, {65466, 16}, {65467, 16}, + {65468, 16}, {65469, 16}, {65470, 16}, {65471, 16}, {0, 0}, + {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, + {503, 9}, {65472, 16}, {65473, 16}, {65474, 16}, {65475, 16}, + {65476, 16}, {65477, 16}, {65478, 16}, {65479, 16}, {65480, 16}, + {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, + {0, 0}, {504, 9}, {65481, 16}, {65482, 16}, {65483, 16}, + {65484, 16}, {65485, 16}, {65486, 16}, {65487, 16}, {65488, 16}, + {65489, 16}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, + {0, 0}, {0, 0}, {505, 9}, {65490, 16}, {65491, 16}, + {65492, 16}, {65493, 16}, {65494, 16}, {65495, 16}, {65496, 16}, + {65497, 16}, {65498, 16}, {0, 0}, {0, 0}, {0, 0}, + {0, 0}, {0, 0}, {0, 0}, {506, 9}, {65499, 16}, + {65500, 16}, {65501, 16}, {65502, 16}, {65503, 16}, {65504, 16}, + {65505, 16}, {65506, 16}, {65507, 16}, {0, 0}, {0, 0}, + {0, 0}, {0, 0}, {0, 0}, {0, 0}, {2041, 11}, + {65508, 16}, {65509, 16}, {65510, 16}, {65511, 16}, {65512, 16}, + {65513, 16}, {65514, 16}, {65515, 16}, {65516, 16}, {0, 0}, + {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, + {16352, 14}, {65517, 16}, {65518, 16}, {65519, 16}, {65520, 16}, + {65521, 16}, {65522, 16}, {65523, 16}, {65524, 16}, {65525, 16}, + {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, + {1018, 10}, {32707, 15}, {65526, 16}, {65527, 16}, {65528, 16}, + {65529, 16}, {65530, 16}, {65531, 16}, {65532, 16}, {65533, 16}, + {65534, 16}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, + {0, 0}}; + static const int YQT[] = { + 16, 11, 10, 16, 24, 40, 51, 61, 12, 12, 14, 19, 26, 58, 60, 55, + 14, 13, 16, 24, 40, 57, 69, 56, 14, 17, 22, 29, 51, 87, 80, 62, + 18, 22, 37, 56, 68, 109, 103, 77, 24, 35, 55, 64, 81, 104, 113, 92, + 49, 64, 78, 87, 103, 121, 120, 101, 72, 92, 95, 98, 112, 100, 103, 99}; + static const int UVQT[] = {17, 18, 24, 47, 99, 99, 99, 99, 18, 21, 26, 66, 99, + 99, 99, 99, 24, 26, 56, 99, 99, 99, 99, 99, 47, 66, + 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, + 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, + 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99}; + static const float aasf[] = { + 1.0f * 2.828427125f, 1.387039845f * 2.828427125f, + 1.306562965f * 2.828427125f, 1.175875602f * 2.828427125f, + 1.0f * 2.828427125f, 0.785694958f * 2.828427125f, + 0.541196100f * 2.828427125f, 0.275899379f * 2.828427125f}; + + int row, col, i, k, subsample; + float fdtbl_Y[64], fdtbl_UV[64]; + unsigned char YTable[64], UVTable[64]; + + if (!data || !width || !height || comp > 4 || comp < 1) { + return 0; + } + + quality = quality ? quality : 90; + subsample = quality <= 90 ? 1 : 0; + quality = quality < 1 ? 1 : quality > 100 ? 100 : quality; + quality = quality < 50 ? 5000 / quality : 200 - quality * 2; + + for (i = 0; i < 64; ++i) { + int uvti, yti = (YQT[i] * quality + 50) / 100; + YTable[stbiw__jpg_ZigZag[i]] = (unsigned char)(yti < 1 ? 1 + : yti > 255 ? 255 + : yti); + uvti = (UVQT[i] * quality + 50) / 100; + UVTable[stbiw__jpg_ZigZag[i]] = (unsigned char)(uvti < 1 ? 1 + : uvti > 255 ? 255 + : uvti); + } + + for (row = 0, k = 0; row < 8; ++row) { + for (col = 0; col < 8; ++col, ++k) { + fdtbl_Y[k] = 1 / (YTable[stbiw__jpg_ZigZag[k]] * aasf[row] * aasf[col]); + fdtbl_UV[k] = 1 / (UVTable[stbiw__jpg_ZigZag[k]] * aasf[row] * aasf[col]); + } + } + + // Write Headers + { + static const unsigned char head0[] = { + 0xFF, 0xD8, 0xFF, 0xE0, 0, 0x10, 'J', 'F', 'I', 'F', 0, 1, 1, + 0, 0, 1, 0, 1, 0, 0, 0xFF, 0xDB, 0, 0x84, 0}; + static const unsigned char head2[] = {0xFF, 0xDA, 0, 0xC, 3, 1, 0, + 2, 0x11, 3, 0x11, 0, 0x3F, 0}; + const unsigned char head1[] = {0xFF, + 0xC0, + 0, + 0x11, + 8, + (unsigned char)(height >> 8), + STBIW_UCHAR(height), + (unsigned char)(width >> 8), + STBIW_UCHAR(width), + 3, + 1, + (unsigned char)(subsample ? 0x22 : 0x11), + 0, + 2, + 0x11, + 1, + 3, + 0x11, + 1, + 0xFF, + 0xC4, + 0x01, + 0xA2, + 0}; + s->func(s->context, (void *)head0, sizeof(head0)); + s->func(s->context, (void *)YTable, sizeof(YTable)); + stbiw__putc(s, 1); + s->func(s->context, UVTable, sizeof(UVTable)); + s->func(s->context, (void *)head1, sizeof(head1)); + s->func(s->context, (void *)(std_dc_luminance_nrcodes + 1), + sizeof(std_dc_luminance_nrcodes) - 1); + s->func(s->context, (void *)std_dc_luminance_values, + sizeof(std_dc_luminance_values)); + stbiw__putc(s, 0x10); // HTYACinfo + s->func(s->context, (void *)(std_ac_luminance_nrcodes + 1), + sizeof(std_ac_luminance_nrcodes) - 1); + s->func(s->context, (void *)std_ac_luminance_values, + sizeof(std_ac_luminance_values)); + stbiw__putc(s, 1); // HTUDCinfo + s->func(s->context, (void *)(std_dc_chrominance_nrcodes + 1), + sizeof(std_dc_chrominance_nrcodes) - 1); + s->func(s->context, (void *)std_dc_chrominance_values, + sizeof(std_dc_chrominance_values)); + stbiw__putc(s, 0x11); // HTUACinfo + s->func(s->context, (void *)(std_ac_chrominance_nrcodes + 1), + sizeof(std_ac_chrominance_nrcodes) - 1); + s->func(s->context, (void *)std_ac_chrominance_values, + sizeof(std_ac_chrominance_values)); + s->func(s->context, (void *)head2, sizeof(head2)); + } + + // Encode 8x8 macroblocks + { + static const unsigned short fillBits[] = {0x7F, 7}; + int DCY = 0, DCU = 0, DCV = 0; + int bitBuf = 0, bitCnt = 0; + // comp == 2 is grey+alpha (alpha is ignored) + int ofsG = comp > 2 ? 1 : 0, ofsB = comp > 2 ? 2 : 0; + const unsigned char *dataR = (const unsigned char *)data; + const unsigned char *dataG = dataR + ofsG; + const unsigned char *dataB = dataR + ofsB; + int x, y, pos; + if (subsample) { + for (y = 0; y < height; y += 16) { + for (x = 0; x < width; x += 16) { + float Y[256], U[256], V[256]; + for (row = y, pos = 0; row < y + 16; ++row) { + // row >= height => use last input row + int clamped_row = (row < height) ? row : height - 1; + int base_p = + (stbi__flip_vertically_on_write ? (height - 1 - clamped_row) + : clamped_row) * + width * comp; + for (col = x; col < x + 16; ++col, ++pos) { + // if col >= width => use pixel from last input column + int p = base_p + ((col < width) ? col : (width - 1)) * comp; + float r = dataR[p], g = dataG[p], b = dataB[p]; + Y[pos] = +0.29900f * r + 0.58700f * g + 0.11400f * b - 128; + U[pos] = -0.16874f * r - 0.33126f * g + 0.50000f * b; + V[pos] = +0.50000f * r - 0.41869f * g - 0.08131f * b; + } + } + DCY = stbiw__jpg_processDU(s, &bitBuf, &bitCnt, Y + 0, 16, fdtbl_Y, + DCY, YDC_HT, YAC_HT); + DCY = stbiw__jpg_processDU(s, &bitBuf, &bitCnt, Y + 8, 16, fdtbl_Y, + DCY, YDC_HT, YAC_HT); + DCY = stbiw__jpg_processDU(s, &bitBuf, &bitCnt, Y + 128, 16, fdtbl_Y, + DCY, YDC_HT, YAC_HT); + DCY = stbiw__jpg_processDU(s, &bitBuf, &bitCnt, Y + 136, 16, fdtbl_Y, + DCY, YDC_HT, YAC_HT); + + // subsample U,V + { + float subU[64], subV[64]; + int yy, xx; + for (yy = 0, pos = 0; yy < 8; ++yy) { + for (xx = 0; xx < 8; ++xx, ++pos) { + int j = yy * 32 + xx * 2; + subU[pos] = + (U[j + 0] + U[j + 1] + U[j + 16] + U[j + 17]) * 0.25f; + subV[pos] = + (V[j + 0] + V[j + 1] + V[j + 16] + V[j + 17]) * 0.25f; + } + } + DCU = stbiw__jpg_processDU(s, &bitBuf, &bitCnt, subU, 8, fdtbl_UV, + DCU, UVDC_HT, UVAC_HT); + DCV = stbiw__jpg_processDU(s, &bitBuf, &bitCnt, subV, 8, fdtbl_UV, + DCV, UVDC_HT, UVAC_HT); + } + } + } + } else { + for (y = 0; y < height; y += 8) { + for (x = 0; x < width; x += 8) { + float Y[64], U[64], V[64]; + for (row = y, pos = 0; row < y + 8; ++row) { + // row >= height => use last input row + int clamped_row = (row < height) ? row : height - 1; + int base_p = + (stbi__flip_vertically_on_write ? (height - 1 - clamped_row) + : clamped_row) * + width * comp; + for (col = x; col < x + 8; ++col, ++pos) { + // if col >= width => use pixel from last input column + int p = base_p + ((col < width) ? col : (width - 1)) * comp; + float r = dataR[p], g = dataG[p], b = dataB[p]; + Y[pos] = +0.29900f * r + 0.58700f * g + 0.11400f * b - 128; + U[pos] = -0.16874f * r - 0.33126f * g + 0.50000f * b; + V[pos] = +0.50000f * r - 0.41869f * g - 0.08131f * b; + } + } + + DCY = stbiw__jpg_processDU(s, &bitBuf, &bitCnt, Y, 8, fdtbl_Y, DCY, + YDC_HT, YAC_HT); + DCU = stbiw__jpg_processDU(s, &bitBuf, &bitCnt, U, 8, fdtbl_UV, DCU, + UVDC_HT, UVAC_HT); + DCV = stbiw__jpg_processDU(s, &bitBuf, &bitCnt, V, 8, fdtbl_UV, DCV, + UVDC_HT, UVAC_HT); + } + } + } + + // Do the bit alignment of the EOI marker + stbiw__jpg_writeBits(s, &bitBuf, &bitCnt, fillBits); + } + + // EOI + stbiw__putc(s, 0xFF); + stbiw__putc(s, 0xD9); + + return 1; +} + +STBIWDEF int stbi_write_jpg_to_func(stbi_write_func *func, void *context, int x, + int y, int comp, const void *data, + int quality) { + stbi__write_context s = {0}; + stbi__start_write_callbacks(&s, func, context); + return stbi_write_jpg_core(&s, x, y, comp, (void *)data, quality); +} + +#ifndef STBI_WRITE_NO_STDIO +STBIWDEF int stbi_write_jpg(char const *filename, int x, int y, int comp, + const void *data, int quality) { + stbi__write_context s = {0}; + if (stbi__start_write_file(&s, filename)) { + int r = stbi_write_jpg_core(&s, x, y, comp, data, quality); + stbi__end_write_file(&s); + return r; + } else + return 0; +} +#endif + +#endif // STB_IMAGE_WRITE_IMPLEMENTATION + +/* Revision history + 1.16 (2021-07-11) + make Deflate code emit uncompressed blocks when it + would otherwise expand support writing BMPs with alpha channel 1.15 + (2020-07-13) unknown 1.14 (2020-02-02) updated JPEG writer to downsample + chroma channels 1.13 1.12 1.11 (2019-08-11) + + 1.10 (2019-02-07) + support utf8 filenames in Windows; fix warnings and + platform ifdefs 1.09 (2018-02-11) fix typo in zlib quality API, improve + STB_I_W_STATIC in C++ 1.08 (2018-01-29) add stbi__flip_vertically_on_write, + external zlib, zlib quality, choose PNG filter 1.07 (2017-07-24) doc fix + 1.06 (2017-07-23) + writing JPEG (using Jon Olick's code) + 1.05 ??? + 1.04 (2017-03-03) + monochrome BMP expansion + 1.03 ??? + 1.02 (2016-04-02) + avoid allocating large structures on the stack + 1.01 (2016-01-16) + STBIW_REALLOC_SIZED: support allocators with no realloc + support avoid race-condition in crc initialization minor compile issues 1.00 + (2015-09-14) installable file IO function 0.99 (2015-09-13) warning fixes; + TGA rle support 0.98 (2015-04-08) added STBIW_MALLOC, STBIW_ASSERT etc 0.97 + (2015-01-18) fixed HDR asserts, rewrote HDR rle logic 0.96 (2015-01-17) add + HDR output fix monochrome BMP 0.95 (2014-08-17) add monochrome TGA output + 0.94 (2014-05-31) + rename private functions to avoid conflicts with + stb_image.h 0.93 (2014-05-27) warning fixes 0.92 (2010-08-01) casts to + unsigned char to fix warnings 0.91 (2010-07-17) first public release 0.90 + first internal release +*/ + +/* +------------------------------------------------------------------------------ +This software is available under 2 licenses -- choose whichever you prefer. +------------------------------------------------------------------------------ +ALTERNATIVE A - MIT License +Copyright (c) 2017 Sean Barrett +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +------------------------------------------------------------------------------ +ALTERNATIVE B - Public Domain (www.unlicense.org) +This is free and unencumbered software released into the public domain. +Anyone is free to copy, modify, publish, use, compile, sell, or distribute this +software, either in source code form or as a compiled binary, for any purpose, +commercial or non-commercial, and by any means. +In jurisdictions that recognize copyright laws, the author or authors of this +software dedicate any and all copyright interest in the software to the public +domain. We make this dedication for the benefit of the public at large and to +the detriment of our heirs and successors. We intend this dedication to be an +overt act of relinquishment in perpetuity of all present and future rights to +this software under copyright law. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN +ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +------------------------------------------------------------------------------ +*/ From 49f8a57915985c6c275fd2f4c6cfb5deb62d629d Mon Sep 17 00:00:00 2001 From: Darya Nechaeva Date: Fri, 1 May 2026 00:17:11 +0300 Subject: [PATCH 02/16] feat: add filters of different types and sizes --- include/filters.h | 47 +++++++ src/lib/filters.c | 334 ++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 381 insertions(+) create mode 100644 include/filters.h create mode 100644 src/lib/filters.c diff --git a/include/filters.h b/include/filters.h new file mode 100644 index 0000000..3ba7715 --- /dev/null +++ b/include/filters.h @@ -0,0 +1,47 @@ +#pragma once + +#include + +struct Filter { + size_t size; + double *data; + double factor; + double bias; +}; + +/* 3x3 filters */ +struct Filter filter_identity(void); +struct Filter filter_blur(void); +struct Filter filter_gaussian(void); +struct Filter filter_sharpen(void); +struct Filter filter_edges(void); +struct Filter filter_emboss(void); + +/* 5x5 filters */ +struct Filter filter_blur5(void); +struct Filter filter_gaussian5(void); +struct Filter filter_sharpen5(void); +struct Filter filter_edges5(void); +struct Filter filter_emboss5(void); + +/* 7x7 filters */ +struct Filter filter_blur7(void); +struct Filter filter_gaussian7(void); +struct Filter filter_sharpen7(void); +struct Filter filter_edges7(void); +struct Filter filter_emboss7(void); + +/* 9x9 filters */ +struct Filter filter_blur9(void); +struct Filter filter_gaussian9(void); +struct Filter filter_sharpen9(void); +struct Filter filter_edges9(void); +struct Filter filter_emboss9(void); + +typedef struct { + const char *name; + struct Filter (*create)(void); +} FilterDef; + +extern const FilterDef filter_list[]; +extern const size_t filter_count; diff --git a/src/lib/filters.c b/src/lib/filters.c new file mode 100644 index 0000000..a55c195 --- /dev/null +++ b/src/lib/filters.c @@ -0,0 +1,334 @@ +#include "filters.h" + +static struct Filter make_filter(size_t size, double *data, double factor, double bias) { + struct Filter f; + f.size = size; + f.data = data; + f.factor = factor; + f.bias = bias; + return f; +} + +struct Filter filter_identity(void) { + // clang-format off + static double m[9] = + { + 0, 0, 0, + 0, 1, 0, + 0, 0, 0 + }; + // clang-format on + return make_filter(3, m, 1.0, 0.0); +} + +struct Filter filter_blur(void) { + // clang-format off + static double m[9] = + { + 0.0, 0.2, 0.0, + 0.2, 0.2, 0.2, + 0.0, 0.2, 0.0 + }; + // clang-format on + return make_filter(3, m, 1.0, 0.0); +} + +struct Filter filter_gaussian(void) { + // clang-format off + static double m[9] = + { + 1, 2, 1, + 2, 4, 2, + 1, 2, 1 + }; + // clang-format on + return make_filter(3, m, 1.0 / 16.0, 0.0); +} + +struct Filter filter_sharpen(void) { + // clang-format off + static double m[9] = + { + -1, -1, -1, + -1, 9, -1, + -1, -1, -1 + }; + // clang-format on + return make_filter(3, m, 1.0, 0.0); +} + +struct Filter filter_edges(void) { + // clang-format off + static double m[9] = + { + -1, -1, -1, + -1, 8, -1, + -1, -1, -1 + }; + // clang-format on + return make_filter(3, m, 1.0, 0.0); +} + +struct Filter filter_emboss(void) { + // clang-format off + static double m[9] = { + -2, -1, 0, + -1, 1, 1, + 0, 1, 2 + }; + // clang-format on + return make_filter(3, m, 1.0, 128.0); +} + +struct Filter filter_blur5(void) { + // clang-format off + static double m[25] = { + 0, 0, 1, 0, 0, + 0, 1, 1, 1, 0, + 1,1,1,1,1, + 0,1,1,1,0, + 0,0,1,0,0 + }; + // clang-format on + return make_filter(5, m, 1.0 / 13.0, 0.0); +} + +struct Filter filter_gaussian5(void) { + // clang-format off + static double m[25] = { + 6, 24, 36, 24, 6, + 4, 16, 24, 16, 4, + 1, 4, 6, 4, 1 + }; + // clang-format on + return make_filter(5, m, 1.0 / 256.0, 0.0); +} + +struct Filter filter_sharpen5(void) { + // clang-format off + static double m[25] = { + -1, -1, -1, -1, -1, + -1, 2, 2, 2, -1, + -1, 2, 8, 2,-1, + -1, 2, 2, 2,-1, + -1,-1,-1,-1,-1 + }; + // clang-format on + return make_filter(5, m, 1.0 / 8.0, 0.0); +} + +struct Filter filter_edges5(void) { + // clang-format off + static double m[25] = { + 0, -1, -1, -1, 0, + -1, -1, -1, -1, -1, + -1, -1,16,-1,-1, + -1, -1,-1,-1,-1, + 0, -1,-1,-1, 0 + }; + // clang-format on + return make_filter(5, m, 1.0, 0.0); +} + +struct Filter filter_emboss5(void) { + // clang-format off + static double m[25] = { + -4, -3, -2, -1, 0, + -3, -2, -1, 0, 1, + -2, -1, 1, 1, 2, + -1, 0, 1, 2, 3, + 0, 1, 2, 3, 4 + }; + // clang-format on + return make_filter(5, m, 1.0, 128.0); +} + +struct Filter filter_blur7(void) { + // clang-format off + static double m[49] = { + 0, 0, 0, 1, 0, 0, 0, + 0, 0, 1,1,1,0,0, + 0,1,1,1,1,1,0, + 1,1,1,1,1,1,1, + 0,1,1,1,1,1,0, + 0,0,1,1,1,0,0, + 0,0,0,1,0,0,0 + }; + // clang-format on + return make_filter(7, m, 1.0 / 25.0, 0.0); +} + +struct Filter filter_gaussian7(void) { + // clang-format off + static double m[49] = { + 1, 6, 15, 20, 15, 6, 1, + 6, 36, 90, 120, 90, 36, 6, + 15, 90, 225, 300, 225, 90, 15, + 20, 120, 300, 400, 300, 120, 20, + 15, 90, 225, 300, 225, 90, 15, + 6, 36, 90, 120, 90, 36, 6, + 1, 6, 15, 20, 15, 6, 1 + }; + // clang-format on + return make_filter(7, m, 1.0 / 4096.0, 0.0); +} + +struct Filter filter_sharpen7(void) { + // clang-format off + static double m[49] = { + -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, + -1, -1, 2, 2, 2, -1, -1, + -1, -1, 2, 12, 2, -1, -1, + -1, -1, 2, 2, 2, -1, -1, + -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1 + }; + // clang-format on + return make_filter(7, m, 1.0 / 12.0, 0.0); +} + +struct Filter filter_edges7(void) { + // clang-format off + static double m[49] = { + -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 24, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1 + }; + // clang-format on + return make_filter(7, m, 1.0, 0.0); +} + +struct Filter filter_emboss7(void) { + // clang-format off + static double m[49] = { + -6, -5, -4, -3, -2, -1, 0, + -5, -4, -3, -2, -1, 0, 1, + -4, -3, -2, -1, 0, 1, 2, + -3, -2, -1, 1, 1, 2, 3, + -2, -1, 0, 1, 2, 3, 4, + -1, 0, 1, 2, 3, 4, 5, + 0, 1, 2, 3, 4, 5, 6 + }; + // clang-format on + return make_filter(7, m, 1.0, 128.0); +} + +struct Filter filter_blur9(void) { + // clang-format off + static double m[81] = { + 0,0,0,0,1,0,0,0,0, + 0,0,0,1,1,1,0,0,0, + 0,0,1,1,1,1,1,0,0, + 0,1,1,1,1,1,1,1,0, + 1,1,1,1,1,1,1,1,1, + 0,1,1,1,1,1,1,1,0, + 0,0,1,1,1,1,1,0,0, + 0,0,0,1,1,1,0,0,0, + 0,0,0,0,1,0,0,0,0 + }; + // clang-format on + return make_filter(9, m, 1.0 / 41.0, 0.0); +} + +struct Filter filter_gaussian9(void) { + // clang-format off + static double m[81] = { + 1, 8, 28, 56, 70, 56, 28, 8, 1, + 8, 64, 224, 448, 560, 448, 224, 64, 8, + 28,224, 784,1568,1960,1568, 784, 224, 28, + 56,448,1568,3136,3920,3136,1568, 448, 56, + 70,560,1960,3920,4900,3920,1960, 560, 70, + 56,448,1568,3136,3920,3136,1568, 448, 56, + 28,224, 784,1568,1960,1568, 784, 224, 28, + 8, 64, 224, 448, 560, 448, 224, 64, 8, + 1, 8, 28, 56, 70, 56, 28, 8, 1 + }; + // clang-format on + return make_filter(9, m, 1.0 / 65536.0, 0.0); +} + +struct Filter filter_sharpen9(void) { + // clang-format off + static double m[81] = { + -1,-1,-1,-1,-1,-1,-1,-1,-1, + -1,-1,-1,-1,-1,-1,-1,-1,-1, + -1,-1,-1,-1,-1,-1,-1,-1,-1, + -1,-1,-1, 2, 2, 2,-1,-1,-1, + -1,-1,-1, 2,16, 2,-1,-1,-1, + -1,-1,-1, 2, 2, 2,-1,-1,-1, + -1,-1,-1,-1,-1,-1,-1,-1,-1, + -1,-1,-1,-1,-1,-1,-1,-1,-1, + -1,-1,-1,-1,-1,-1,-1,-1,-1 + }; + // clang-format on + return make_filter(9, m, 1.0 / 16.0, 0.0); +} + +struct Filter filter_edges9(void) { + // clang-format off + static double m[81] = { + -1,-1,-1,-1,-1,-1,-1,-1,-1, + -1,-1,-1,-1,-1,-1,-1,-1,-1, + -1,-1,-1,-1,-1,-1,-1,-1,-1, + -1,-1,-1,-1,-1,-1,-1,-1,-1, + -1,-1,-1,-1,40,-1,-1,-1,-1, + -1,-1,-1,-1,-1,-1,-1,-1,-1, + -1,-1,-1,-1,-1,-1,-1,-1,-1, + -1,-1,-1,-1,-1,-1,-1,-1,-1, + -1,-1,-1,-1,-1,-1,-1,-1,-1 + }; + // clang-format on + return make_filter(9, m, 1.0, 0.0); +} + +struct Filter filter_emboss9(void) { + // clang-format off + static double m[81] = { + -8, -7, -6, -5, -4, -3, -2, -1, 0, + -7, -6, -5, -4, -3, -2, -1, 0, 1, + -6, -5, -4, -3, -2, -1, 0, 1, 2, + -5, -4, -3, -2, -1, 0, 1, 2, 3, + -4, -3, -2, -1, 1, 1, 2, 3, 4, + -3, -2, -1, 0, 1, 2, 3, 4, 5, + -2, -1, 0, 1, 2, 3, 4, 5, 6, + -1, 0, 1, 2, 3, 4, 5, 6, 7, + 0, 1, 2, 3, 4, 5, 6, 7, 8 + }; + // clang-format on + return make_filter(9, m, 1.0, 128.0); +} + +const FilterDef filter_list[] = { + /* 3x3 */ + {"identity", filter_identity}, + {"blur", filter_blur}, + {"gaussian", filter_gaussian}, + {"sharpen", filter_sharpen}, + {"edges", filter_edges}, + {"emboss", filter_emboss}, + /* 5x5 */ + {"blur5", filter_blur5}, + {"gaussian5", filter_gaussian5}, + {"sharpen5", filter_sharpen5}, + {"edges5", filter_edges5}, + {"emboss5", filter_emboss5}, + /* 7x7 */ + {"blur7", filter_blur7}, + {"gaussian7", filter_gaussian7}, + {"sharpen7", filter_sharpen7}, + {"edges7", filter_edges7}, + {"emboss7", filter_emboss7}, + /* 9x9 */ + {"blur9", filter_blur9}, + {"gaussian9", filter_gaussian9}, + {"sharpen9", filter_sharpen9}, + {"edges9", filter_edges9}, + {"emboss9", filter_emboss9}, +}; + +const size_t filter_count = sizeof(filter_list) / sizeof(filter_list[0]); From f96a06e52ac21538641e7f737c85af27f4e24ac8 Mon Sep 17 00:00:00 2001 From: Darya Nechaeva Date: Fri, 1 May 2026 00:18:40 +0300 Subject: [PATCH 03/16] chore: add Makefile and clang configuration --- .clang-format | 7 +++++++ .clang-tidy | 12 ++++++++++++ Makefile | 32 ++++++++++++++++++++++++++++++++ 3 files changed, 51 insertions(+) create mode 100644 .clang-format create mode 100644 .clang-tidy diff --git a/.clang-format b/.clang-format new file mode 100644 index 0000000..047604a --- /dev/null +++ b/.clang-format @@ -0,0 +1,7 @@ +BasedOnStyle: LLVM +UseTab: Always +TabWidth: 4 +IndentWidth: 4 +ColumnLimit: 100 +AllowShortIfStatementsOnASingleLine: true +AllowShortLoopsOnASingleLine: true diff --git a/.clang-tidy b/.clang-tidy new file mode 100644 index 0000000..92c3c8e --- /dev/null +++ b/.clang-tidy @@ -0,0 +1,12 @@ +Checks: > + clang-diagnostic-*, + clang-analyzer-*, + bugprone-*, + -bugprone-easily-swappable-parameters, + performance-*, + readability-*, + -readability-magic-numbers, + -readability-function-cognitive-complexity, + -readability-identifier-length, + -readability-braces-around-statements +HeaderFilterRegex: '^(src|include)/.*' diff --git a/Makefile b/Makefile index e69de29..31d1afd 100644 --- a/Makefile +++ b/Makefile @@ -0,0 +1,32 @@ +CC = gcc +CFLAGS = -std=c11 -Wall -Wextra -O2 -Iinclude -Ithird_party/stb +LDFLAGS = -lm +TARGET = conv +VPATH = src src/lib +SRCS = main.c conv.c cli.c filters.c + +OBJS = $(SRCS:.c=.o) + +LIB_OBJS = conv.o cli.o filters.o +TEST_SRC = tests/test_conv.c +TEST_BIN = test_runner + +all: $(TARGET) + +$(TARGET): $(OBJS) + $(CC) $(CFLAGS) $^ -o $@ $(LDFLAGS) + +%.o: %.c + $(CC) $(CFLAGS) -c $< -o $@ + +test: $(TEST_BIN) + ./$(TEST_BIN) + +$(TEST_BIN): $(LIB_OBJS) $(TEST_SRC) + $(CC) -std=c11 -Wall -Wextra -O0 -g -Iinclude -Ithird_party/stb \ + $^ -o $@ -lm -lcmocka + +clean: + rm -f $(TARGET) $(OBJS) $(TEST_BIN) + +.PHONY: all test clean From b08a0e19ad91977c934261ac1017a5bb222a81d4 Mon Sep 17 00:00:00 2001 From: Darya Nechaeva Date: Fri, 1 May 2026 00:25:29 +0300 Subject: [PATCH 04/16] tests: add images examples --- images/input/Car.bmp | Bin 0 -> 786486 bytes images/input/cat.png | Bin 0 -> 6644 bytes images/input/cat_cry.jpeg | Bin 0 -> 5571 bytes images/input/elbrus.jpeg | Bin 0 -> 6270 bytes images/input/white_cat.jpeg | Bin 0 -> 4042 bytes images/output/blur.jpeg | Bin 0 -> 14369 bytes images/output/edges.jpeg | Bin 0 -> 36533 bytes images/output/emboss.jpeg | Bin 0 -> 52849 bytes images/output/gaussian.bmp | Bin 0 -> 786486 bytes images/output/sharpen.jpeg | Bin 0 -> 37897 bytes 10 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 images/input/Car.bmp create mode 100644 images/input/cat.png create mode 100644 images/input/cat_cry.jpeg create mode 100644 images/input/elbrus.jpeg create mode 100644 images/input/white_cat.jpeg create mode 100644 images/output/blur.jpeg create mode 100644 images/output/edges.jpeg create mode 100644 images/output/emboss.jpeg create mode 100644 images/output/gaussian.bmp create mode 100644 images/output/sharpen.jpeg diff --git a/images/input/Car.bmp b/images/input/Car.bmp new file mode 100644 index 0000000000000000000000000000000000000000..4a88549525c7d30cacabcbb9815decd61399a0fd GIT binary patch literal 786486 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

l^zw}&D8=`-sS(9aX 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 s!CK@jj1Zoe+{&SaR4BOND6fF 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 dXDeP(gQqUC~!kXX*gRM$!CF@ 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�kpEM{=jnUk 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

NTy9fRk}ji)OIKF_yaYxUmm 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%0DJj?QVTN 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 EKVKm+5C8xG literal 0 HcmV?d00001 diff --git a/images/input/elbrus.jpeg b/images/input/elbrus.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..3157b9e8857b15267385eddc587dd49e7e8d18cf GIT binary patch literal 6270 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�Gl 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


YNpoqoO>=Sy2G4io%U3Jc!bRsyvw5i)+2O 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

QBAV3SC2oMW` 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 Va%c$-mR+@5i^{pn3nx$9{Qr@Q==lHu literal 0 HcmV?d00001 diff --git a/images/output/sharpen.jpeg b/images/output/sharpen.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..efc0cdd79ad5eef2b7dd05d8066571fc441c073e GIT binary patch literal 37897 zcmbTdXH-*9*gYBqrASc}>7W#mE=X@t5fBg}NUsVA1f;hBfvEH@AfU7;RX~VH2|aWK z1f)jkA@r7n8X$z5-}|on|8l?FdnfD6O4d19YxbEr^E}Vq`&|6JSOi?t)7I4nP*DK@ zRFn_kVg?WixJ30|`>((BU!$S^ufI$~Lrrt#@|7$9bI{V$U7@9?y>f-_Djhw;e~t2u z@hSu3e?R{BZS348koheyZ6lT#`H_5Z@5^#2b$6yQ{s z{=4V2|KXv!6ht|wuhU$7jMME?iS|G{%H4Pd0EqD&a|bpQ}RO86u9=@3Efdek+Tv8>pY)aG30P1`quL{|Q=l8d1Tp~0!TC*8@yvi9h0||{$&i4*=d0Ya zn-a2Hj$xj5b}r(j5P0`<$-0qlL=1Ylx4c)h%9`dfryVFf4<-hz!9Pby-aG$=A&>vI zjtD45?*OGAvDM7VkH3V%~;)+yJb2^jdZ4coZdn0J8qAH0t9kec4=?j*k@TO&|bZtHdg z@y5jXksK@|tdl%B1Y9Fs0Pv!)&*r8m4M{)uCGiWu4jcH>o7Svh&YAV@@hCBqJj_ja zT6Lx%cVe%xf5pVdrBmJdw$<(DUUbBV)A~wy=WJl$8m&P}@`FBp!wbNK`QwTgC-C`T zugeigJoZ?6Pc9`2O2agJ6n=H|H6-ZgxACv9XK4YXB1fg26LS_Mf`mhu|H~evevdvj zq98Lr;W{1Z7@>i=bF*B5sOo31t_^DXmEIBZY9C$^S`Nf5R0gWlc}WMKlfNGFuw4M6 z_(_*xsY6@vtK3~p-tb<27C9V4EQaXAGpMW`)}9wSUoZZ*Dwg zHlh9kK){r2Rm z`s_tHP|-jdU&&){w#H}Dg&Zy9Fe7Nc4MW1Zg?fia$*1y87=^V zI(9@`{CIl;u$$K$qY*i!FeVo*p2W<5uROiCi;wPTP5ybA#_PbYO(p4*!~dC3#prN) z=>4Cml?XD|dXTQu<2mI~j9=7d--<{sUrW&GNi`x?Zy0m|xO4${&u`p*0T^kx04$1= z64+sM;T#awPIYlRq9ta8sQ2nNxBd|8Y>!~_jOBf8ol=dHl@_hQ??sfgFHO92D8WKH z{hv854aM7I!t-A4!K0^dBclL{FTnS)ywvRfW`lOaPO9Qe%V0||dq|k(ubg5O=EgD10I1@`BwIyedX9 zMg(aee*s`oQ+JDXJbOj%j}~~S1ijY4OSe>eG-;K-3WJqpP5gkOx>9CQzfwBkHJJ(D zdOTiU02rb2@>nsQ+XlDh-epl)c*g)0OA!<1HZH1_u!n3CPGrv~net1Y*S_~C_>TBwgqCHa4Wm;i>l_5j; zdqK`g#j%vo1%T~NeXQM9<*fn&g4J+SZ3#F}KGckVHnZ^2Bj^~of7=y18Iy&l?Bm0U zgf}#a-QEfZ>nh<_qO(I{Y9s4FzT*0(1U_JmywWWQg^7l18)`HA%*)o)}V-e}xRatLTQuVdB-WVax8WBYr{tZ@we)opc!?$&ZPEFFSUTuSMOaPzpk-ae8wE^LIPa zV2#66t+MESU?Phlc4Bmh58EWJn83M6MuU%``GI48Gl3fC@)bWC(;EekAzre4Biwxhf|QRXK2`trH_>``~Gmguk_G zp?{R75C?NRa}n*3htLUn*fo#$E#d;X;Y)X&Yq&cm8@%hQg@_GOcH5G!yC6R@Md?wx8u4x}*ih7C7};mBfB)JA^U6Ov@fL{Dx)FJV6^a z)yFT#_s*Z)Fub=Ve=cG&epsA+_&Od`w>q!iqxK{4&PSx(LX~(MeSNF_>d=H!X<%}w z)mVT*_aK8&U#SwJeYZtF(3MvM;~>Xu7D?eA8N&E1w^qH(waWm*AXsU9Gx(=eqjv z*dvm!GP!P$y|j-A>yVz`eQ8e|0LBFxsGrY1u$i5yjk=rVCyo?yM5?R!53v>%N*DWXM_pcBgG4!kh zqPiUoQ~(?NGGB-d4Knh?CMK>#gE&YGg-KmfNSGgwYmi9Cgb40^9E0&+Zglu3} z3-A*%%R(_oIV;CGnbrrcSTHiP2-1*)%T{bg4=(_BN{$q99(ET16I3#%l71Xb6wCEX zPy2yg#FSs=4Dp`0!M#U8uTsGuNY8FZ#jhJimO-Bu-aZ!O1!lO=X}PaS55;N0>`I`> zX_qMUnPyiKL;uQWGH;Iemo-mJ`=;N!zVNz9Ln*>x(AoSNe5 z6K;AAz{)%CgavOx_G5xkrr`t`a; z2|Jq2{hs6Qx;AUm74W(gMFIH4IM`+6o;kR%liKt3snwfZKgl|&g z?Q1H>LZkOeDo+vnd@%;FC5s%((3v^^;IyHvG;74?#$DajR#C|SexrOoya-7I=UxKh z+xP9~kb01t=z~@Z;`>|%wxA>3cO^`kp+Y7}vV?~lk zqIfHG2U(t|2Ys=aQd6}0ch@4pgVERIdTzwX^Uy;?ep$rF@&WJ`!n6djd(KkRX&}+Y z)c5(Gq~iKPUB+%8vJE&X$7HmKzg09M|9!<+JDjKD8aL0seG z+cz4xeC2ik;B0C~x4$`v^ckzw^SCEZ*wgc{i*Um*nB)A*12sm&$zh$xp)C77fpQbY z=Ru0#8rHoFz_w3E@V6PM_4;4WMi0bp9%Gex!(SR+DBOU2hFT0@GM)k-Xa%ZkKHydyXmiiPpaJu0%Cx!$C6Cr$pjvRX#37&h?GSt=JS{z&-u zf=OLX5QzmDt`y$4@FS=Xc+&!sInsk-59fnEY?<=(!)~D>{fNk}HU+eu!ff(C+)%Xt$YOtBOji(TY;P{uWWm^W@KtL9T1QJsxoazsz2$x2|WV zscSfyOw@Tr|8Px%sx?l$x;5JC)8@2z`53ElGGzGW#HvQ|a7#QYe&^=O193T@`+Iwa zDvXIRjeBQ4OW{wjaW7%86a?)?@lZ&Sc&h(kl62+TVCX--Fx9o`kh zx^=6Gu1WEYol^02jicueX_j56bMZj2VX472>2uM{Y^xK*@BT(YeId3|U7jU@{lWdl zcTTOW>HF0Dsx^HtPUEL;#CzL$?YqE51`S2mcgWi2)BXupErllJue#adApF4!;0kD9_}^&Kqk@V*V+tM}3~Qfd~_|{Nfk$mU^G5HOyP})VMY_ zBds|vxgj_et)BSGS8j59$f7F=2-CnMPoNBzW&(K(fa2UzNwn3 zCba`M^KNIz20YXnc_b&Fa$Te4^~B-5>8BcZR6!Cfne#=YJX{j5ROLxcJ@0D(7 zbEB-Bf#-TpN!W-~bSc*Mrztl|@$fiKo#hceGpnj@xfW| zTGx=2dHP5i3y-xd?_SkXMF-CT&%vTYdSc}dNsD|rq6a~G35rx<=>jGhgUWRIW?Wa( zLwj-L%KF@lj#p@Od`aGbQD|}v(GQ={$It3KzV>6kc1}mBW+v-QsFB+zX+VL;CEk5W zhcW$m(gmP0!3x)X0hnf;>7&Nd_AVs3^r@gT(US5r@8@0S9Ta)qHH##}^?G#W1BaIz zjg8FAtnK;^yw2D+?`xg$l0@QF!we?Fxm+LF9bIyMbq=SM<-={^vJW<<^yqzCoB8vx zuE@l1Ct2O6CpE-r{6jo5923TEj22AN+xVf@6HD`sb+TQ~E^z%3bwdJ_; z!+uu|L8>ODqFq&_d-!9JAByTCutH(3#H!WnFqb z99*l(i8A_;n?~2(_w{gjwfXCyT6R@>!}MlY5@PE3&*b30>47Oy?H>PwfFIOVSVeUz)2+oI7FF-U+@KX`&9b3HWRs!2`UW}n{IbVJFvdn1gX&iC^unt=& z>(iFYy_IQ;tUuaWSvdyphG=Bq7nY9OQ8z9C9m?TK#Lm6Jj&wH}Vj-q4-hUz5xW@|* zH+?{*=BGtnAA5!tsu z+jbi&ORT7b3J?!5m4Y4f_wZ{eFS_`z-*(R%``66MZJIuq!vD9NAy@R?fJw!*L0jLF zkBtr&fa39q`F!U!y$5M%t>XH+ljc3IwhHTtlIIHf4{ED3In9n(cn3ZEwu|$e_8ENd zt1K>t_*ks_8;H=H!R%}k7OwkOs3x3i4-Oft^*^V#dEn?rh0a}cNwIemCg`l4^2&NH zhmZ^1%VtNwN5pAeUIKqMz0J>~5w<@5gk4gq(Z{Mf?lMSu-;&2V@pV91hyUyJV{d&a z5-a4kAE}w37qvLiI;`|jO3ZRxoD&Y$ik zL)=L51waRRSTz|`qk5J50uX;}&bp~9JR6VZ{`{djF~0~F#0z6?ac)`Hx>v;Rux_Ql z5l$UF1FF9=e@RH+>E*Y;{Y2)^ho`666}Ou;)$aP^Xx*r{A4}hw^&F7UaY^7tM=6uT zz_qzqc^81k4!MpVJI6nV&W{sb{gHMix=rm|0O%(xhytRH56e_9V}e}1s-Z9G9f$0k z+|gB}^%$<{!C^+Wcig*wxMkW&jN0kOwKje>n|UPy4pIVKGe4}#vRu#&=f^Y0Sm}eo z|HW3^tMg3M8~$l+@xF8T1>ltzzk5Dy{ihtSSUaUg+e_?*55*N@6FeI5<|(x%J+d`v=r-=A1>XK$?V#6nD~L*$mgHhWMO~DKW5VjSteHQ|-g&=B z?$uDQ)7@J?Wy!aQi;$WwvkL%^*N$V_BWEN#E1NM*4z+ChNVp8VtIqqI@DYV~Y^k(E zs+QpEECvf4g-v6Adn+9te(hBt{&%Sl=+hq}YDwMt=ru8P z5f{^Tn>fOpf(>=XCxH2x)#!Tfkwk*8VY_8$+a;`dfh{V|%`3lGkcY>7CSe~1`vXcc z?SleJ*Xt!8;pbl!^cO&dN2{Qg_%vKRX=mM%P~b4P`$gfdJbBz zIMTu6dfb8kbTCOJHA}V*SAVtft(OH|>L^a-Dd@d6pjP{@Jy`gv;bE&}S`4%Z9 zwY#Nx>&B{4>)at6CaHlvp~4H@AX;}=nSB|?f1iHF`h({RWBfl-YikHP&KBq;Z9W=w zpaH*>HBknO2Bt~V`%8*FC?H}cm9mnNI>9ht0y+&ZFVB)8y`s7oJW`Wy_8`?Vd+b}|P zR|I}G7IsL>dh-K-&4uNAtC%~Po&zywNfS0m4@&Hnrfj#Im0+^L?;o~Zt0ym_u4oN! zi}D)yjwc3KOYfodF94b6@j2dZ)Asn8;<~oB=&*TsK$yE^ewN#qcER&4#?X(f+~24# zHE$ThWj$c+3nSKKT6VRUXnp9JdgY(!(6d)ihin^-J!pMuP2wqAl`F!3;J$$?ibnIL zq#D>QoI^`a^|L~Gnc3c%QzDO}GU@V*mN&mQ#XO~?<}+;#ah=(c-Bv%62iA#Hr48cs z%8bsE!!jR=yp^^#4$6Bi{b07&7a~8}KAk~b0PZTb$=@sklDA{iyKGdK7+4iC}D0FcWwT(+;yeQ-mmyY{zPosPb*~rk6JTVNrkj*GSFD z7^KJ#LFJtt+w_w8qy^ac@4XEJ5!gm4%s`=Wvnf|YY07g5(Z}Sz!z2_rH)H#ot{>RK z4Vvp8;R&b`?LCgzJK09t!Q-~aj5E$I09`XUWR`Za>d_Cp!ALjm-!3TWRuk_>O3Zk$ z_!KI+bgtQb_C^bs??9;*cNN_VO>1EZC zMjC74%Th%TsfC50KeOl}50Q42E1!i=<0{*3{%U)e-V{x{a{6BRps&@WP(+EM-96GO zrpeO!`-fn>nN&6l72V%u-pCVpTjNs3Nu9n9Ye(lVXJJkRA$O-;zrrfryumdfzw!ZA zIWUc}USQQ93ut2>#|DnbBuw9dfP;wPYijn*<-!DyN>u0IUHsh1wX&AWX@o+(og3C)0G(7dE1iv8i{%_;1_m zKk{t#_5cH+67>phrtU;o#bMbp+?ieeH#>U$^o9MP7u&?1knb&3^E=Ua6`lZ+sPACD z3e1X)H$Xc-PCC9#08*hj-bM>myiehY%4>++?YCa*Gse7(5OTtM7bWf-DJ@4z8_yIw z?X06TqF>}hX~Y{Se9X2MZ{GU3IrZyw1OsXxp${KcY=ZaU_#qJ;{I|k2{w}CFpO?be z*7@njl&>=N&}#@1s2G@sy5G|RrNCzvI&%@>A+UDjYRiHlM|sBiX4O<{ZJ4=%ROP~4 zdRXRRT^}JRDg18VH%Q^qFLZ$VytTa>q$yilh}j8R-QVl$w_!7upF?ILB`>&TkJ-nN zsFTkNzFz=-w(&y+i3^y&Gd*^1`0+88Gc%;%hTp5ZELKXz!lo0n5YIu>6|Mu(ZkxNRL5-n{@+l}KvWc>e^u zqGyi|R3xuj<6E{ZxaAYXUz3?r1}P2~Bah5;#&nE7%X!tp<$D3>l;JZMqfY(%fs)Y) zYQy^}0jgcWR4|M}?US98o0lk68@))hG!(Xkiq>Feo%wZS2W&x!bmq(0`MkBxp#H%h zrJ+NDqi0|3+)newW8bDhgJXJ*ENq%m5#v$J9&XH=XhR<3=84!|5y z99nC>TezMwLO|g%fIZSf@ZOlNpz0=keUhV#AH%QHuqNG=r;463-<118P6kHX1VZL_ z$gK+}{GsnI0KUa!4zhNw!fDml5?~MA8|S;O^ok5I)ZXjXymT6c2tTWDgP6ndHgbsd zh+lD#7$k|pao-|6&Ht-)X)suN*qXtqAGd`*sQRpnY&a>NP4D{c)NEile2H_$$2C2d zH-^W|*UARm`~lnqu2;Y;4l8(Gu5K>1PjB_OI}?&i|5!y?5?F$69KVok!7kku#4yz+d+^tM&?~{}prvwyyW&1>L z0MeLm@;`nma!_bq78T+)n*%O}mr|I|uVWCEO>5$dr^K?VH;Q7K!oM3h!8>VGD z0(rZ2$VEFmFvcUm!@TR5%eMNth5*F&Wy4c)SlbJ4ZZywf)!*iIN+D>utnbylmqNO+ z%>sb9fw+msws_`7nx>@hSxEXoG~oAViN)PnYg$C<9I0^$aWmK`euao)A&MZ^^Y0LL zVxoj6UJ|`1YbJPK4dcbwW2QaJJm0WZx@OMHQGD4e!E38Aionvh2faZMc}rGxC5yaY zI>uju+)_5gdiSdTD~`Rek!%r1FRR>K6Jq&KuBT~ zUa-$hLxQNgG$dr;|*D$SfS&sCmyhb z)3aaYxj7zgxbyJW856ZL=%#w)#7l7rV}M`=gr;GgMes_aNwC=f`P+u6?fE&1c@Fh^ z6RNwU?$QNkahYV>m3Y;_cr@IDO*Y$<`E!3*y?pxPB+8WR@>)$xyEO>8nPx4rwQPhY zN#gsg-T&<_#$4AD84>t!22dZsL;BppCkM^>&qWTO4Wolr7tTsblhhRQnNgW%rY#m& z>w*;D-veLLM}BMA?2pgPr*3M1zs?dtzD}%L;$`VR4eC^P+r;*m zKcCYguphmv&0E&_7;yo(xf_E7tli#E)_D{^s&6`jJe=Jt)tMFvvqd(|54yL?+roH3 zC5Jc~+s*6tn#IHr3y<&_*?-o;6%KUS+SBpCNUA@~4OLDHVydfYiIwM`!N+mChuk2F zC&gW^N;v+Ggtk47s=+smZdcW3SGUb9NLlaf5SF8anDOdsGH>^KYtNu2yr}&3Ogc_O zylCiV+S|J+U48<0&51uPuc+gdm8$Y!kaOS*k$WN>gBALRq}0XvE06G5m`Dw}mdV08 zLR*wmwUxE4-p%O`&6;AjF8gYSFrFQ+!)~Ig));SRC?Nz5c>;`4r? zOc|RfBMn*O`ygY8QF0OC5!g!B9eI*R{)|D;KzWH}($S==80qMR>vH!02K#=_K$^T_ zS#xZ;mwJ(6!9HLyr=)bxw}~qcTG%+ntJ4Gj*rc0VryKvRf;=`H^-xDn{sa4C0}$HH zvj<+Rq+kl2;kG0F0zb6YN3kZ5msza(LzCU$Ft8G7)>ghCM(DPXm&^Bx_#>Tdm1e#g+yM{4K$1MC~$Jod0dIk6h$8;qz&p+ai58%8h zYw@s@N$BfepUHN|iNw{mKmjL{LhVNuytI ze|zUiwf2qQFlq1hKHJ8s*t6Y1FCy$g5&DnxuG9HYPQQTQav!%-fVzn{%hrhJAB02W z>%WLFMx%SlJM3b=fDqu{DJ4 zhD+G6WuD6|3Rh7r3<)qlC+xr9_6(sP?u~y zq-rznGRHORimVojQJ1^N&D*GSo6I*kcXPakT<4M^Iv&1vaMlQ0gnL5uKpI|j;s5ek zYh-?BXKc^QdqukfF%o!loaI~XUhM~c4X0=cE}y3>Mq|e$1ro>%4@`jSSGuZ{WZ-ew zo+8;91ED8fga!xxPf_GMZ&gF7cFZ!1eHV5p)PP})wm1Q3s!~8F8Eor+MdRnWrexgi>}uzidl@0e#MxWt6tgIw+8yNi!WT;`*9Zx;XO z$j%rEEqNI3n7Wk;%ATI>pR{TD8D!^nY8k95(2CgB{f~~u$HW3Luc78+YP{}?FDn)s zrErJ3OYx@EX}WiwE~c;3S9(zRSoFLKB<9}SoAHfOOyTql>H(ZmS-qDccftAF1Um@) zM}FsDHEwUHNGGPY*j|NdwCRY3s!kF5#5X}{fbvr)$I!J_BVCpp$ zNJ{wgj2C-S=H9RUH%8i0nkWTcGQCL!-TosDSIP7_b@_3#G!ONF8l=`TkRG;}%70UX zGkhfI0#L`lQ%C4)x4Y3w;0c*bE)B-mnn;}LQG`BqnoYfC0XV% z`cQRG5)ySdv+8ebF)7Sv`a9d#O~Lj?^S@Rb#8028V_nFVIDFQUeJoV4j0nT9M+9*5 zUz;cSph+^Ar$wJc{s~X0Wz?(f6_SNiNRY){&x}C{9y!z##JS>h?}W_cn?o~SHPN{ZB$=X4c{b;2-W$gW`4Y4ep0{1tFgsZ}=5CBvXbPKc)v| zjcCdjkHZ81@y0~HK{GvIz8cTT?h*j$m` zYV2S(rQ2&|{Rd6aJO5Z$3B;ttlKAoCN8!Xrey`3fNROKd?2&4Mv`KeUh48aQwDvqL z`7a!__f|Q@+GAh8yly+5$V^g~3ygKux z@K@ll65^H>@yC|usclQDSDMap(x06|19rwK>xKf3avGJ4nLLK)cxmI36me+7Z1M+&!ki4KyW4J_r;|A#*1ds8qwW;*>Ci2-S^SU>gH7Kn2EA{p_q^Lf z9onK}@Pg|o!TmQK`;MC^oc_KGAqW#HE`5vmKzE$9zU+FiKKicfriO(bc4fmRHLy&G z;!EDsnOj87mR$fSOqgPN*Xp{#kw4%mgrQ*=_fVsSdD&b;YAhOs?hMpfdNO|pKYQBz zbAGz!v;HNgXB3e}5NHSEnE=MFCOQt(ifv4f>1q6Pm;DCSaCkLKJri+CojfV+tjOjO zqody1FVo}wb7wJ1wZgpd&k_!~*gLoJ$9AT*rG6{saZzoUtjxyKo3=+JPKWU&+L)cX zca?Vw-8uJL`uW7`m=c%wu7E%HG*n(yp^@#bhR5G-?!NA6XXs0{CPGpofh$L4Z3d02 zkcBfGLwN*b{PO$w{kO&TOd~_oZ-z{ft_L@A?L?xZ)}5Kee3*wE1Ob`HR2w^0c< zv#$f)Q4U6dq}72h*6kzrNy?*8%|&=5@G6Nu2-C~1Vc#V!5Gefijb{q@SY6%E#;-{i z0UQrs<0(jUM`DoqND|Y%a0$2Uk4-^uNw3T8g(C*prwb>boz=a1%N~AzDcoJNx&Bey zKb_OFm>~q|=1VB`cpWS`oS(AaNA)F>WGYB%<4{hK?$X-pgA&FNU&+6|^n#bIBl`Fz z#w%b^=M>K@y_CKq;jG38&^qDz-WfU51)MKnq1J{`#iyb30GNOBBh?B7iG!Ob@! z*qkVApKVJma>+|vkw6KkAO`|73PH^3M54*U1RiwtkoTVI?694(wU6qL?ue1HqoqdP zQsE(7$VoA!=r?9l@isHwn<=GGp_jgM<(=1#FvFLEugCo@P=AuR-;Swx_aa3IHFT1R zEpDWkYKa2w8uUa}LXCDc9=UUQF#*LzRJ6hGHe>p$j8{m#3DzyqW(@7SW}W!<_xI_R z&HWo45S3Xj^{v1M%0{aZN4|Q;8-?R0hnpGj)DtZ%|KH=ITuN{aAu8$B;dyV@a@%h8- zY16o&N{>QVRFie%o>w=^CF0i6dUuqtr=rAf1erSpo-1mPAtL0wL6&9SG# zb`J$RUNWzmt9dX4i}lJ|dstootWaBcv5)E*atQy7g&|vE1Uzfrl=uJxeB0NX4eb7; zLC4Fj;|zt!YY1{XHN~#^aN+Ie-m}b+xy1Ag3(VUn)%@gplL^zws_Z%IpsDpU+C|_F zXN6lE(;p}uMO5&VXSw&wi#()EC|S}txdWoX0yS;SGqA8N#|`iOW9tNp_qn2ZPo2Bh zPLcn*d=`<7fVCoeV9Q#@nWo@nHkkz7%k{`#CnKEa?%ASyg`Qw(qCc2)hv>h+MPi|S z4+Z)#rjx8+*X~JjJB&y)*d?GdM+{Z5H>cCki|EK-0C36oq`Yz=dtw$G(do*u_d6cI8lncMw zk4=f5XU6A19qcPjsV>26>6|`}TZ&&I?si6A%%<8I3Wx}F64F#`8*;FM(N;h)b@d;+?j^6Mm(i9g*92?i;|3S#wY6u$hW*wr; zfzFx|?syutl(jm7_3C8L(rLE>e)bWR2zjQeseIc(xV`G$mX#TfBK%S)Gtj09g>dKZ z=N@y#-R#v*5Pjlc$~`}Kba;68N6!X3Y>UG33H}t_7rge@DlEf}13QxWomXZfF_#6Q zM2;@7zoG1SZ?95U{uB1|UB#Lj?VC8^pAR=agh!0;$;%QgeLeA?BI z)~?Vb5aZRF(-j&Dk$UE&+oS_**?`-DcvYw$EdY};S~Qtj`hCA%Dyq(l>Q$2RG4Ry< z+tMbP3-a+R*}S4C`*hv$QyDESFLOvfXl=T2^5pe-kOG)&pRGs|UX%nawf5H0cEPAO zx$3I}UIF7;1ix$?jXw+63cDqmQ7X>y)E+0m>l}RDTvrNP5om09;SPD0Trm}5|nv(N^gYPAq#ue*2 z?lbd5e1NQp%r|)4E!;n6cB@`C%d9`~%+mjOfQTW}jH;UJI-~Ja(5fk zLiJ;pT|hkx`nReHpxqBCxU$@A4svA?Z7r;Z!X@TBGJIjEWkfChlQ;^#gI)+c^n= zs6(Ia-BOBMQ%&Cpi7!F&mL{s*z#myd3M{yA+c#<-Kl;$g$>>tH5piO++5GL0jAB7~ z9`DF|4>N2X?zh3^Px$|HEoir~hY#7)3r@(T+#vZ9Q{9)6fS5@{gy-dvcSUh6Jc5aR zl>-joxBU3j?>|3!d?BAc*ER16>YK}KvL@4GCQ@o!8mlS;oGM+KW`3fJGY&RRkbamE zru8;u9q32a?4J#*iM_~cH1`Oz zLKi6aaz!jH-x`A>T`HNUu=&20s#CFX~5G3}YB6ugp zl}w}Z2(>Tli#w*03mjMKBJEYihfXCeM`HC%zOOhRB%!B6w9dCr3Oo3&H4qK3`ap)w z1-9LTLEd{;#pUaya$csaFnoFG=ytH~Ua!0B_ju~huc;jrMu2b~&mJ4Vuh?nF463pD ztMBdIb}yX6V;fXOwOZ4}ZP2IrZA#+~L>#+3&yChlWhY=7T(XvoT0O{OFGrpfL#cklmzuUooKf!hav0tuI+TK;r|EhgPvqVtqy>W)ouxp5i%%qaLf6#$jR zhaK)29zBrr*e>+^MP#%}>oGB2_)MlSO|Kn8F(WKJn6op#qdb*#=4mD5!X(-n;DH)Oz)6{ABAOD9% zEO*LEB84~(;p-TZT47;uzh&0XJNLfpm~C1q_Hy%whikk|N4N!@hQ=b5V*~P^nEu<4 z)hEVZtGwaywsXmz=N!hph;A93F zEQCU&f~F(7Z-w&`ua^+_tPS+`lw%vv#UJbOkupv`d#|fg)8FZ_nl!!$-8~$4&y~NU z=F)nvq+mh9GdnZWfReaNj!a$vu9KckslkFPAY5G?$oZ?SWAedJ`EUPpp<7%-a=m7W z@Bg+-w)bfg(Vw}*#D-K!LuLKL+0dc6AlNE&^2`~^gkO6Lb7J8RpBg7=#hBT%EKEbH z@T6z&gwuOvbOl85XWrJSy}>83ybV(~XO{~D5v6ubH_QqPb%({B7G@Er!EpEm0LhXl z-9|^UX!rwjt>k`8j3b!Jf2}0ebR5%~M099SO?W@a<^m5t-)u^FuhyUG9O-4sbbntM znB6YU`h-nh6&}w|Cx-ycKtkIy?U;y; zOI{qrG_Ut$iOHpgM$IJyk#j!XLCZVewUH{#O^OTRPepZoT3D;1F?SOgzCXOxqu+;}v&al@YC&ql?;1 zm6>ab9~gZ9bu;ms>nF!?4lMH1#sE_wY5}=EiZeQ5%WG8MEyw8uX17ir8h~f&Qk;nQ zZsRv}HSVlG{^uxM^{`%0)u%aiVrs)phwCiReP>T7W z#ayPSy7F_^{nxb0{PQDg>+W@WR_+V?E;8b!uGj;fX9(lWJJeCL$?%sW!>+K&kl+cJ~ZtT1&&k|ZSVdJPeoB#b-n$a1+u~vPofh z)1$&NohAM5cWSi3goMuTXWcMJ^U&A}HE6$VOof)EZ-0}>xLC#}C7V8@a}F*i zv4jeDYhJx_l9745u@#n?*QT>hyN#wzp~&V;EQ>)gv|X>;qW9cG)x|jLYd-Wm_IQ!Y z`^Ec;Y$zi-CGI;efarDZjyOp9-sR{aUVq7HDGwijoCn`YSpnb26stQ5B=8-hpZ0z-(|*h-Yqa z+GIu8rs~3wy*|Gh5!ZEEm4F=_Ofvt!C_3{%rvE>V^HoWTkla*A&gBX@)`buYxsO#y z3=6quONE>ZpIya(YwriWBtx z_5)w6_?vp3u&jgC@z##-wKzIz9#0kX{^?|BHp~dvfdM8t&v)uaJUi+IF%#T@sbp<0 zW^FzOynRUl*FJ~OH zq;1AqXJ4K>Vnjx2H5->$Hw4elCtCb-_W*%uUw5gTF?5DZdy10hf_+G_8M3?{Emy1x}`yNFD;?9747MKe8VJ zGa`01${Ah`%8oK!W|~rD{$j9_jy0cXsI>`IGXzbwzpTyPlMA@$x=$W=g0M^RN=uAu zsEp5~A*PNGz<}!XQZ1I|Ne(vr4^1`1HpQVK`(LQo=-%;Pmr@S_U+Gv}tB7swbAInX zCXf{2WUy;Vp#laY>X(OV3pkrG-F&Md5^Uw+*@spzwwtG+=7q9E$4yfGt{1sDKjZ3h z`Hx@o%-jHYW@mHDM$dG`Hmjll^6f=yOMt(xu9HaP`9}o_+!XaeLxr@VfxaR)xZe-` z^B!J8!9P|c)CXzjD&3|Nb40IN=QDG~0%;f8< zg~QO>qvguR)_*)ziqKmZ$-nEE)tK&>1a*mxp$A9uHYg&)>5ImkZNN~Yf{r{kO`P4c znV^9e>VhQAqRVpYPOY(If1<;51q`jWP(v-{Pn^zr2Dog(sjS=m==aF;j6n?~Ae*^XXzHwiDEtR0e~gX@-*mhBBdHDu={OBvtzF)7Pi&s^+i zO)YoQ@+U~2d8Bv~Dqk(Z{LwpODfTs1+E}v@$UPvm_}<%)ylVh@L*m&uWiV1wI03N>-yZt(_79n>|?BVzuz-h&nNotBYO8grU2Z4 zTqwU~{*F9-&g8{UhM6fc6)Xat|27Mz7vWz3NPOKArUQch$Mg#uxzCP9+dfExM*T&K zBh(|GR1ACV2u$L@98i_dDY`J}m561f5<7XJ3ez6UeZ#T>c_fr%g>?wVsK&Px8vm%9 z>OL5k8V`2Q#H8wWqMB8a{D^Zk)P7fT9R*EIUVxklG}kBfS5f97Dt5SSyTLKfgC3Z7 z?B3Pcx>WY}MSz6{G#Tk@^W6I!mx1giz@8M3@6(KWNshyYK8cp=D-APKqif5^ufPl= zr)9UW38jkvWvEOnmy#qzuhfw7Z6ZF0CJCoZq4pcEey>Y0mwj`7)A8+y-K!DT?9i?Q zU8%%V&(TJ8idam_(N&*3w^WVN>vI)=S66b+(%-e_PufpWvHF^_s*y#rl0WOG&b9gI zu?eixin=mCaaZZjb?uLFCug9!7gE!oa zX=p^HD@P~29fG`fR2;&)qTi>A;oxxyO`lmV5+qVJfYe@VSJtWecBaL}go#ygdyRi> zs`iJTK|ApXFU_I2hLPMlh89p~$fyN)Cxi>ZQBMC}FT1cK9EfhmTxJNkqb`BnpfOWY zAH*y4NB!cw9F!p=E)Tefwl)d{PY?OHP6s3^ZJ&BIsnq`WY4+{7xd-W0v*W~&Myz8o zvEXRSt>bO%H+fsD?aE*~7hEy1GBO<@JOM|t(m~uG!KwB9~0u)%=xpvNQhKd_s zt8G@ApQo&D*@(vz7r&y0+Mm0SRbJwGC%2i4+9bX?AX)}Ns`aReciZ?NFB_rDAUV# zf{hT{S2}W2)B~Q?&)ao*XX-cx!OBBHo?5e%@tLW0_mC$ViZX8cGX~YgAXwf0Hg;Uf z8IiDnj%idFs&{o0Lu=VAW`a6K0)MK-0kUd*?V+UM`MMm=RpliV2mAh3zyC-?8f<-U z3+N;YnzhVw2$Eyi!hq4^jh~^o6Jb>Iqt^gXJC&77f>MghB)Ap4s1_l#2O37qq4OJ-PI{F~5OuZT0I zXc+=S%w=W#PcV|Xhhad zv&Z!F+rm5cVOe04&n4%QC~ya{UO-^SF@cu&yOpIZAQjf_Sxl$v+JS3XDu76>WZwur#h2K0r(2D-jt_zxJ z@FQ%`89QdyVnnGY4rB;g6-~9nT*5V=%*dc<3AcYt72Lz(YLGYSF-&TuOWX0jJC1J) zg7ABcdNha5Rxv)6rZ_PDkIAL(c1}tg_q~t3`@G|vlQPkJMIjhE`cC!f`0 zQ{S9>UnWxGp2b70HJ1G)@R+50h3y>B(OeC6G(wI3V@lL0`ZFOk`Q0etrj0dQq`^(( z;nGB@*WXq5fzC;=Xvwe+IB+&Zx;qZxRG<{D-AIsXK&-NVnJ>_Rmf$&LnaQ64?t~n{0*K+2GFfSDq}*m%I=+_ z&80I_Z0i4*8hv+;&5Rp34Jy7)QT>j#Ym4QnDSjXh)o2mr$6RdROog^hbL&J zr&C-;zrUmWre}IqtWU6bFYa(WKnrKgc0! z>*DFLDf|b7$w=2P{0FQQ_pN)0uD-43IWTLnR;TUslwhIY`}(|MrS#B_7coVff}D}t zo*oq^1x|LZ_bGukWyFUAcdl?NZrT}|nFW6u&qP}cAwipLi_(nYT!?C)8c4+w%O?ME zlK(wnTdX3yZ<_a)uxp0J z)pf*IQxRx}a3W(g+#Sd@*LP-M61Jr_9lC?uwiJv`)NX^OK9ZSCFqM9effh4-#3 zc4MdC|2ox;)Y>XIH;EJtjBMdj3-iNpuP1GU6yFng9rApv`^@LJpw>z)olu#D8P;cS%@l^1VPKi%Qa9j4RIg^7K0V2g+^Ap1AolR_p$y zex1~naMNYo&}(PJl*Jr|pA;2f{TvyNp_Yf6yIPMr*;OM}3Uq>sr|NdCa3>PSzEVXY zRO3OKP%6+j-=GF9Dt@II3~5REF5Dt(-uH8blku&`#`}qCJ;J@Ob_=`TDz0~+8~Ng9T~KB;l!32J+-tb7R3-< z2VY z^6(JJ+@I;AR)yM+Zi#W}dDiU`2Vo8J&cumBH;<8FOlG6>Xrpi-w&f!gvV>|!|2I9U zfMz=hh(Czpj501G=2Py*7QOl|byPYm{I0nq+B`Lj4%*v?60(c_&L2rh{$qmMl@T1% zCy6zC4w!cbP?kRgvD1tztuOjR0MxO?XklGGOWGpurGR%r2I;5fQm@Xqbx}p3-X=be z4qy@2)dTkmeKt4OVJK)gnt-Q@gSX%4En67_&;Y9(^+<~Pfsb%J9-3BwNKk~EgLR z?ve?ICVLw`8cw4UmudPde_#>vlK;1D&#&iwe-Sv)vDulHndDx(T>c`ELeJa!An;U= zg=h1a1BV>XbpZigHBQB=~?-YDYD8AXb{!i@0nW}VfSl~irjqn4wnYsAl$wO5?aYGf%{eR#g@($pY9!x z`KSavZa-7&EL79Ap{`A~E9@EQr_Ti#H@@86II)6nR@u3gH>T0o!mp!C5SqBE36}|H z5~bQ{4yKChzHrT{#1!qQyd7GUTTy{uW9X;e*lV@I_BvP|7vnD)=!kC+kd{e>_Kyl~ zwXWDJfB5h;TS6H9Xem}O%UV|(%*xQ$`kJ;A;x-10Lw>VZ~psC)co z$rD=Y@>7RaZ+L(lpS$IggcJ+y`z-H{hh7=d2G*ug6`k+qQz^0Jj!a))07mf^h3 zdd0DaQz~9xeXH}4RoBYKQ7B(G#pwtnPKg(XoS^uSIM=;H`s>owfPhBr@z-Pt+xU~z zs92NhaskN$`d-yE>Hw@fxqaq-)!HA#_`}_j&23xaAc^n-QrJuyIX?KZwU{#0)4~1c zEL-(b)uDInVMmCSebsF#*79*pzu?)~030Rsp~{I`%IVUY)2BXu`tro7h-pmUx3fs4 zz!xO%iJXO&WWH9oyNHkCz=q~)vQP5nSeQ{XAe{Br#zdTcNsw? zdE+be03nmb*=|^^ZcR=2#WjCKX;?fey7oJ!91k2nZhGMQxPjCKfKUU6LoYGJ7~@>l zGcwKO&Q`+X*=y?hnc_;JjQ6CV?k)S&_eY~4pzi6TAdMTN{u9T4>QqZI2Pft}@Uh$_ z2gJ|i!`Fe8(GON0>T0$xR%?& zUN7}y2^4n%$YUz{1VHa)Km;bW3%EUj3aapPj_lS>pL8n(mLIrrsd3o3sdqOQC&m=?OhNjNeD zK5A@P8SEcwx}8=PPm@}VlWn=}e4AcUhLjIfZmr#ErCW6dWFhfCP@a9HICi^aAs#)V zk1+RH+MgdaQa!+ZagTtNE82}J@%B2xoq6c%u-Bn)Mg&=XO^Yg;rKbkOi|1c{u(;7C$ZtiGJJIczp zKqkkEcqK!Mat@3)H|n26ug9eefxMYc+}Q_e6o~JkL=!FA?Xw82;-=BIA)A#R}@%|CmZ0kJWSa?OV2Q z6!CB4=yt0y> zcnCxlP@?i%#YhgEZyc4Wt|w17ET>R!F|C5&HoIY|x6j6P#B}+SUwAy-R2JF2wR)v2 zgJa%Fb!W&hCmn?`LSXl{0}tku%968)ext?vK*&Z!Wh#wJ*=!Uc3!K}hhH)WtqC_IT z9TiyxSM9x5w`IWEXEviR{TmP~8C%{?8s9Eej2^60Q4c9flkFC3@w*0;TB!B`*oa_6 zK6ccuq9p8PCw!EeVxA(F$GVoXPSpP%i&Q|9P|N=ETo3GQh@V0{gVnRm(k1vjfp%?X0NaU6B!G)tz@)r^%9i&`UZJG%(laSEswHuRn}no$)bX6?W1tg1V`zp+>if zp0|e5Du{8#bhpi-KS8L@9ZqWHp7Ho!EjCh2)7dg8QNGWBvBrUsUth{T|DItX)V6qfQ)Hxyhet%@Y>b=`RaC!3IuAt z7?arhZ)r7A*VW^rj#F5?w(L}@)U7EX#iVD~)*Vxvx(=@<+sz3;76(5JZ$d8~xY2yI z|9b9%E5*FugpgG$ylB^~rF>q$x(7r3;%IA-9(Ua_hj}8meCCSR$b5riC>|$|_ zx9%d&buNZJ5wCc2`M*UEQ5;zS@%-1NDdz zF7$NoDkjCgRUGgQ3nK~#>=16~7TF-hR)YXf3#akEj2fa1q&U2e&oX?&6(->t7Dh$l zHo9vx|33lU(n=Wac5pl7`@4^iEcl@dM@hUy%S3QAIrANAxk`Z}4NYrP<_Obv$!bMz zw1m&{UgnPsw&iW40xdpuv!AaK5P=kXH{;m;&o?D58PkD!pwO8+=^g-mMs@DJ_Gp#A z4ahF)9o>u-^9mN+s#`@7ynRMeE$E1zLmf3-*yY2;Bjzkd9r+Si`@Owb3aS~ zeZtn1N7rzXoyDHPLO9RR6iN4IIxJ7cKrF;=s+)!%;W<49wcHf z6dqJ8S>~f4!TQboFwDz$3*ZwckuX~S^P@z_-~mAA$O6x`pXSaROGh?p6e*^y78&Cl zEw*Uet|cuT*s4DDReDO3Yoyjiw)+J5ezU<98@8Tvs7(hm8eGYY|G6Zoh0_y$K!xRg~Z4Y>XN`sV(&3r zI;sEw z8h(n)k9bOXo*YRA9ARt#hT-zoK3!q2$&qPzKU9oyQTv|dz?2ktV4pKHH@D_B3yo@nHL8=g3rGxT)WqDSZLbjt1+Qemd+GY8vS#8# z<6)hxrrz=Bx|1CSyz0+0O@r2Shks1>ufsp!*(zWK9XJ>FQlg?#Q%_xV$^9RL;Mt`y zt5BUM^eu2caoKxtCRVHnCCfjD<47R$HRCz+s0#}i_9g%`keRjqy91JYixC*C2*1(C z-0TssWq!6;;dOt{rwUujPT{WqZLtWvfC_xd>TzAFz9}lt_|@i%wKY)#-(T-Ww-eS0 zSQUfr_Q?#yh>@`;!!aB+m9zl^}9nL)eDe*qq^)><7(Dq0|9O7rlac=61%4zg?Q9jQ(99qO3N;;J^J-A zmf-Bi#9S9Jszuknf!pW(E0`bcF>1ybLvib&CE95nwale;IyGG#w;6%O;-HtPqz z8U2=K8kaUPN75PqFY-2^qxb0|2Vh~TkEtYya-AHG_Svt$p40EpHnX$Ho*=5w5kF|g zMlF90x8IoZ`{@5Y;+ua=Uj0T3DRB#+$vTP%6|%Sq5^$qbi7HnRwrsatYVMTq!0h$H zd~TW;tZ$}mp(S@@*Kv)ggtZBaBMoubLF3#g0hdh3U+dg*Inic}%rR@3=K;oG)Yw6C zWP8U|;Qe6hRy%&+&UA;1VHPONG)HmcjgC#(=+VggX0M4D!>D9?P(I1Ya4 zR?&;Y(<@>1C%vj3C5GD?j+w?U3HR-0_QVs(p0nRji^V1(>2VeH1f^yH&p zOt~vvu0{79$&liJ{XeahjS_S0A*Tg)TOfW&UC2f&T;n|t?<>r4$_fT}%FvL< zB}=kL$nUWuKuU&^tlhKuJ#NGUYImQER%L+jQ{jvJ%k-f@;6B>si80DSU!WZnv_7!| z$;$1&JZMKcE~0^|>qu8EMW2O#ej4lQKOE7)p&x8KGn3`1W5Ip{2_~Jbz%tSF#&Om< z0ycpPu=Lz7hBgSJiWg5$-Y~_wW-N^sUznVh_`cAyfWpvN#9A3*=`EtbI25xlbe-(* zo6H*d=vG2Dt1rdi>?4l5QkcC?&tRX%T9gq1yK%d;0^@)?Y1H53>loyNFJG zepIQY){@0R&qXK}TT=rT@LR6A?OG|Nc2Q5c3KV`nrXDP59TUDT>3E9uRxJj9G`>Om z$7KF}7)T0uBlnGU9Ws1MYZg3nXTOIkRPMUN)!Tt?9CmT^Q)EK1)=|k?Ig|He28`+ z{65|YWee7$f8EZe=PTe}im@S-$m?lO`vs?r_}$o+#XYqW1J^`C{4EP+GM{*t#{SIp z1oOH8VNk~+jhQFLh)bmL@PXv-zukQ9T-L4PLh!~VcW|8L?*v2Ebn|C`Lq<8=^3(T{ zVmerAdIxY8h~^Y{x@ndXT$m+(QxpvV{=v4=O>|4OYhdFXskf$spoAXWzdpoJuz?A- zQon;Zu&p)UGrf@FH01~up|&SGFMrQF$7dXy&wS2(om`BfiaK22e4hr2s~7t@m`xR> zXsF5>U61Dd81bjqMIxPpl1qoz<+ zr-U>+(xmU#y9{$I=Ki|9#J}J9jTe2}$cl<;(iZkqZ$D|YgAsfFF^%vv;W<^%VYf?3 z(04S`*HO84^+q0t`ApxF`OSW>0mtIW^FrkqfaPO^vbEebC_387M*)+?qkRY8)(&~Y zzz%DPHTNZLw!e_ku)i=#K2MZlu4MNA^ONtW2*t4RN;C#memr9`w{F3^!3mpB>Y#eRzmznjfescu97g7gSmW5`$BR)X0VsJtTnRFSF@h>3 zv=yH-f{V-{dju8I3*52K#KJwbo{>Rqj#mje)z=kEb*mq|>U-ER-s!OvKj>Zq5Adoq zfTHeqCrk2e(=v&F8h5}{K}5nLG#q)Yl5Ck-5?HhVidXH|*&euFWutYP9-;8=%9O?T zSz#xBWPl$KgDHJIs9PFgJJ&N8wak#pn5L$h)+kO(eF;_esQ<@gU*q!%$oLOFSxx)B zmR>(e35ZwS#4sc76AnNhZgR=M)ZlW4O{~w9xz)Tg)&x3L7Zz3|Bg0QXU37D0?3SJWZr>$2=9*P8UeQH2{x+=-xo3Ow0(wd zy~U@ds9j@a#5BNklI!zMgmc{iZG#750W^%J@*8k8zEnG2r`>&Q^d^e;Bbi2W_?gP} zJvHd&{KwzR|Bq{v8?h7R<^M4fy{l0*+$gwyteS~#gMUZ}%)4W%|2FN^9h#r<>sY_; zrFidnnWL!*&AH>D{vq>2*Ps8FKLLFMYX<#Ln;)wqIkj;)ODK}T)z8v8D>l4bOA-r{ z2(WYwi%N(vvGe8b3-CG8$v2FWNh_X%rXH2w!t%L#J!$woMSo4i6_*}=BlFmmQRB!8 zo_bTSYr^U^7j`7G;fh>H!qs#6S<0~-887Oi3)fK&;tcqXrWZv6%K4jkPk#Kx!|t;j z9V{pHiC|E#YUan-Oh@ahZ>7a7t!Cbt(lEE?h2wM>NZUOx^ zC(2rU@b#U0%5=(~o41jwMAqVBmm~NJ0LZZ9K6yW0_m9b;iU1e?_A5*t_dyGN33j9M zP`nqtrG$|?v))u-KwJR$6cLW1U{pAGqRoNJZf1_o318rvciIWAx{KY%|k4I)4EwbXM1O3kULpj26i9PD#|;qihmzK zE{^}wxH$QK;TrmR&*tBoXCQldKPy$sw0D}gY&O!032k%^m0M*FkA`s7=SvIZ(O-fO z7*7sukB~1tWkuhS;7ga}7o!-0%|FGvt_9qZ^-X%i9y%L>gvQGz_6)HnD_ejaLb z&x&xYlFm-BUF-_4+;WQBf10~ZWQeU{6KNL&SCXm@hW63tk0vm%vgm~&k+v58xYk7L zGhpnxMNDS4r%nh18CsX1ZJBQxkS}oHc5S!Ut45|t>cl=C|3NHa%ig}=W$=ZHo>}hN z#12`bA2Z)uvJpAhZ{IqNPy6dUh-ev#Qa$T?9^o=1$_fnjRmoOmDOng2TlpIL;P+%T z$?KbMfkL`U*)KJA{ugHV4%UbTKYVR*pjHNR_o0x{CE*K>+D~lm1Jc!F zvPr7g2ZX@Mib{VhHNoRA8zpZWMWSoiBw9ee}_R80gd+|C-}o z?N#)OCI8hBmgxN@K?Ug=;xYn<`YE%!l6}48z(Ovof$vsK7X{1XK+_%ZSRK3mD@7A8 zo#Xt)zuX{p>5ZB&#{DScHtsBJ7^%Nr9cu(6orl`_yA$!cbpPp^qICv{)Sq*#NwadA zw|o&T6m{t@%hzXF%5QT}85_yH7FP13qxrq#FO%!z!cS1`pS^U%bv@e9s}?2m~^16eQ?eJ)1pV>z-Qy z0&ngBaxO;gIXaxPT}^gfnu{E!nNW-4O!^izGauz=lx{Z-ei;;BZ5s3*sWZ!Po?=v~ zr{`PBX37Rl5@GxQKjY)bQf&cQx1em(2!|L3mzYN8h+U4(6OSOdy2v{aFa2OdVncR8 zOQGJSPldKRSS&0}REQKA*^v$-^K{7i&7)4)Ygoh2$}WmsKI7HLY`MG!9*ma2$mr_b zN(Z{B2B3^Uy{}9tFqEnI7QlGRZw5u02RgN;>c|fzcAT9fZAfcD{g75W9JcG#3 zSkaOw=<$e@LH{~Kymok=kK1tg^P5-vTdZ%rmRiT%dSoHU(+Yq?X)>_Hz+sX0c@)}^GWh9Cv;3i%%H8lV8^=4fwM z*n!(lPW)E3tJ2M+wY8*-FwEdyyR6Z%5iKrb2^IPO8f(ax)<2Vyv2v!_ib$6%8 zdWrMSF=&_XHq`b1AGlz&71ET&L}1AT_e8;&#hQfAu!?^JB%X}LQj2FI8Wccuexun4 z2!*et$(KiU$)R-{!`JLvxmn$EAFqWa4LW`bv959fw=$SU>u`8%^(bkkc%u6G(Eirl zMTcIYvvy3}zq^||0%<5)V)DMm^9t2^#gNb-*gV~Kk>cm}Z0~BKjj%9R7Te&F*q2^~ z)^g2;|MnmbRwwtZ8$W!`?Mob#@nYi1GLZ0NAS)yQTC$&2_T`q2*gBN!0L(T`^$9fz zdVV62p!MI{4UXy1!8Wq}aE!YSdiP!$P;OD2_EgI3j(Oc^=j2L4eqgiaou@v^R0cR6 z7Q?DxDBaj_+mD9SE1Su}&%dX7`p$3u0X8b7LuRg_W$rvF=n_$vdMTcdtjUi_H#)9@ zXfqZi{Tqy?7{#8hA(RHaZQcaefTz36T`#1H%}v(6-RL>t2@GlVzVAW#s1CjgnYk70 zO~qDKALJx8em6~Z%AGX}5>S<|uhh?C0^ia{II+?~EYJP)_aTfjn0}6B_tQP}vII)A zC^rn=mp?iaKvKFR93PT#Q9Xali8cqsmc^ua+j%ndEK;ywN@cq5nTp{rURPRU-tA`g zW@N<1hmZ&Hd~6-ugyXqUW9+WXW5h%-qb_LOX%#dDUIK+7xoqv-8JeWIR)AZn${OC2 z>V#15Y1#gEo~IEbEwRSNyNx>xj!Hr(X!zxTKI94J$foW!{=jK(ZVB8O8qg^!QA2tW zcVb0*i5rq+%!J8ng`B_xeRdwmRxz7$ea=Yf7-Ews8A3jT-j~>s6iuN+6svU$jEoN5 z94Gev1WjNTd+TD(N;S}PDu$I?if^V;a!9|Qww+&NNK@9pTWVtm*x-z*yoQ4+K=JRw zT(y&F9V?cubEpKK)m@`qoj?+9yk1B6S53(0zCkA*gX?z`+L@*^TD;Bso0Gt<1{e%J(jQIcI6j2^LWX&fQS64TzclWVmNL@I0X-KNPrONamRc>NvA&Q8l4qOh26Wi}$L4t+k$$+WR#C4WG5{*tkBFBLB{4 zN_E2lv=hu%ovXOi4o9vrRilO5L>w-K1M#A+Y*I5!vcBh z41U2%Oc0Mo*|g*J`NqBjVLuHP?Y*?3a*5>lvI~~8Q*9jJw}Lt9Uj@yZ z8&|3%_Z!(|`rfVKaib6}cC)V-KIl#46cHM;H1zeheVcR>X9s4Q9CU*hII^6VdlNK5 zBQh_&Mb)w{O4}%E2WVja!Zh!~uKyUm5Oyl3dX0au4+UvS{#fJmyCnq8MN_*x2XBlR zUpVKi)K$7teQ?rxg>mWcyAsJN7B)>6_RPBALv5W*_nO>ke}VZ6 zvTc=u9=Bhl7B>}e-;h1s)p_b4)9c-!OTI?c)_*E^2^G|VQs1IGP7!x?DAlJB_*=?Z zIN_pSHX@xZpm0I?#LCpAOg*M(tpZw&MU=%6#(5#(bk~+|-AjaZ$2vCqh9amheeNNi?adsuCDonB=+Ahw>Uy}Y?Lf9qV zdoL8i+eP$&1RVXXRlt1s_0cM>4&1k0&z!T~s@v$-7@AQbZw4R0|k|(Rh6h3|82Rz(>|!3jJ?e*!>(&3e~BlP!&7ckx#N?HcfBLM zTg3O}z~IgJF(6@YIre#_wB1afWQ0|6Cs)$m>!Wppo@R+ej}r@ivjTM}H3BeN?7&pXwFr6m_Fs<& z*96v%aurMNy$KSE2V)$ykuORp!HBBeO{%cB<2Eq*nwL;*0Pn*V(<;URP--OjTEvcX z^^nJM;z1)Xb?W}B{&PH6pFVs(IS{g@x_~@JbV=Bl|Ihl*C&AIL=k7W>FpVPlq@uobUkN?0Ucmz16@-n&L58Z+mqLcBWAUz@L_KJ(SD zK5<}atJQ6}pWhvFDtbXbxj{`)eVL_^7^su`v&KuzBo%1v_75B08r3HnGp{Tyk6tz3+lUopPcUx`+n|fo{ibf zmwGDR2&O;r>HSrcJ-t=Ie=wtT;#E^<9~u8xLe2Nr^j)S5#T`PLcPzG4>65)j;VKa6colR^#{7{kwl-RDqUi?w z`2EO*&%Ax*@==+-sMDU!XyzhdzXDhuRN}RPErf9JXdZc$`oP^$d%OZieSmjMGJkuu zp8N69*Z&Nbon!~KI1LYKa(nxUo>(B^9KZJG)hKKlMS$$OuHv`y=fTX>{Ds`X&N)uT zAVUQv`$OK)kug|%FVM=~-`SyP@!s=;!Y(f(4^{?vN#-&*uvwUwg19nqi!?EycWwUV4J4zNC*Se4?-+rw|)8b}TekR_ukQjAUaed;8+r|943L@p+G zEbM>NQ~N!lwrY!SNPsB@DmOi7at#R-r%x-@{pD{u7u4y6;xS3Y%Wh&fy!-WT229$G ze#JYF?E`!|yV`s;fExFz_MLu0$KCJ__^y48C4X!P$RuS0FXH*k z%f-QkD5(3sB*vWXzkt zUe_Z{t5Rf>xRtj#V$Y?B7@Q)7Zsr+|mhaNVkeIlbVn>StHI71t-Al@7NkcHk7uk%e zfV>4fU(kfs=|!kO1R3;R!3&c=L7isp&va%P~zyJgtk`BC9#yfs&0n<#T2dueHq4`K^RM*D24+?B%kS zdG;JaY53}}sE0K)Nl0GHW|Wx@ppTkAn6qU~^&g5&mlZCN4jyNALIx3uEtq z1(&=O3>rXtQ!{3)ImULN$VS1WcD`Hva5D3vHAeHhzRM#gEe@sp(W(aDf;yNQAXFyQ zecGuz8N5THcecU!Rb>a?A8%)+a_Oribh`O`QMw`V?Cw$mBd}dBueO^3UOs2m2rL)g z^q*y;HZRy^+5**J>XVVTbJdylzHc^}YL^5gc!n&wq7C>vjCDnEUuhSC6#(A~0A1tw zSNw>$cEc~D?>cvE`0)AQ55+v5zl*BAtrJL8_>+dZx(0kkr`Et$txqeAXTy6mUu$jl zSA18u-mTx|lF=~5Y5ih*iII!Vu_Hn6G#_dVgaBgq$PW#t-y15hcR{`q$97&b*VK-| z>MIa;*5_heH!>=!xk&_UJZwS7*gg%LwxmBSsfeg8q$W_XGI3 z7j(-4tCk{iD#`Xh?Zda9Aw@=2kZaVYbv{`MF1sC08Fz=94=}54oBMiBLOl<5ywc{3 zE44K4rA3?Bz8;@M-hyh17s23~1pEkSFvY zNTy^AU7Es}h&zBTd*Si(VvV82<4w#cR&gL;Sl*1P4I)P^r(*sld1c1u?#IBh1r z3VBLvoh`pDJQ3AF@IL{zB}E^oCljq))Gjuy22MaTc&#TRq0b)vahvYMG_8}C`bV~| z#>;--{bpr7Y;=2B`anaRtZL0AtnX3q~3ztR=k%N?{0T=bGB!lDi ztM-26jhNyw8_!fm0(R-=(_t`9MNsknr@`Jza}PBqaRJS8hfA{wM-2R`??ml;O#UBW z-IT2Es4d~~Q%X-*4$gNs<2)&6DJ+R`z1F$p07bgBH?i7Z;)+Z?f&;s^SzZv@Zlhb- zBjCdKh6dTxAMhWI?F-XoqrH7#MxMi)fWLy?kFV}EadVr4gXQI^GpsSiJ076(49?-% zkfP_7v#=PSzU@p6ae4+r=YU|wv2MipkLZb9%JRGZeFjIU3cc+~gw_v}C{^U81!&xN zGNc)QiDrzs8>!o9e1=|}^8&gbWT}+>sYw&kqfVF2G*o>)>QHyg5XOWnw1qE{vwVdURaa z<2YP?zjKzuldnbj54(@Yl3Uv8M-@+1zr{q`jH>&6c^FI;)e{l-gq zy!)VlsP{DOVXEN>vhx-}DaboR!^}4}BO^Xotj|J!@!qHGo&%NFZPavEIoK`itHcP0 ze@uAUy;njT%oK*jC(CqfgNPFBONy2>jBL^p0!x>7B-?7&8TL)GCUPi`CYW>|K!eZX z`l56Msn`C@o7vDXNBRa*Bt@wPU29s)EgrGX*$BNy^p zt)ls7PS*}tdp6qx>yiVO{>z@~1PC|kncdY@*W$bLAZ}RFZ1GMMe0w<|XBO+fRh>Z! z8id2UhPTY8fZ%;5dxEC6SQ8-UgiF>shqTE#i=TP}F;m3A*X(>6BfK3qRQw>k-K1j! zukD>F(2a_8=Ncl$3nHR8+Ni#1qL`{QS%rIk&CbDbR}0mIk?9PenVwTT|>*IHoh9LKZ@`0`5A*O z%Xo@sVoPg}7VocIRGxivV`C^38?cR-HdNl-{#(I(&$%*QDrWhfY2>rtwe`wNr z3yK}=W^!qet6bBv9*-z8ztzEx%JkE&`qp|gm<>6FU!%vv8O4W@Pf5x2h~h$9PeG3a zt;F8T92b{qllvmzbL-KGrlHtl^rdMx;4C0u#tXqJ!(nofL;-|6V@&a#nsDAD1()QHcB6Jn`9oatRH}K^|1R*u* zg?osVtfIPoZI@iW>}!|vw-&+FRr(0g^^WUfB4UF>=p&4nZ|IfgMudPF509p{LV|+v zeGF|KzNywi>ixTOGLQI-D^82FGJhC<2wotjtrXGpH$vkDe@fQ}QD1^oH9u85m>WM&6hMrf_1=Tu1KXyQ#7|lIdMiDw5M=VGAU10UfVw%CU#a_a01RLRanSMPrMa6NXr|;fb<~MA{Cz20 zTPMTH@Kbsfq!%S`;?|;Qcmk58_@lhFz%O603pS1fpI^F^m2nQ8oxbp z^>WAgS=%M`HQbY+9T=OQS}FS6y5oOwEHQqGk^%!GlXP(1)<}(05NxbN@%^-U0r!Rl-=7W{ZNWZB0^zOh-6Ecc}kHcWKFh7vLz$Sge+6pvNRJimN1XEkYvlA zE$hfOF$`ufCVOKT%ZwSr^xpkG&-4EA{(nB#ea>~C&pGG%Uf1>g4yzd&ovP|bAA)0| z10LuW3;8T6e^lHW@Hqf|XJR`H1Va5>GVeeN_bS_%l{lm=KY{HA3%Ntd$%uMfdT<-%7piFYyg>wX(xMUyS(zfhmaDu(O|Ni!M-Yc zU@%m+Ld*Vt$aTM3`$bFIct^!el`c*{v3$EeJH=)mIMi-E#$tx9=sM}Qn^Vh`~ zbp>9%jZ!z%ZJkDRz6Uph7rZsjKIf=EE$Ao7};~jzEDFy%98~&nkJxb}evDG*m^x7Rk zIjm80H%9J)%4v`14@)cf;I6YLSGCe`j(n62T&D}PM-fRv1*CM86wzM^pmT24y_=r1gh@JhP9K*hcLl(!pHV-KRfnub>Im`hqNSk1jL|br zcN)gP3f*H`HJ=A(GlFFJaOG+Tid%JYMz>OY0Py+S#xNxTX8fFHpOSirn*u!qS3Lc6 zE*kI7@xOr@5_x*&1w<=$F;x22H_gI_}yfHbs?%EC{Bu>9OPSi0il6Iy{mx{=h05sy6?6$>c1|vf#YF z5@o5i=fl)cdDy2%B)i#LUz|<9*c(>5X6^8=je9lwgM73f)|$xTV@STb(Ol(z#H&wf zCoBTS)~uUr1j{~$$O)~BB^n-G*D-W2U|Y~^N6xI@7^!fY^r3hwU){*rC-LHp$tBS% zBO|ss$D9DliZ-IPUs)OHam@yiD_?pA+%N-^h`1WxB`?-=g-Brcb%q3xx^xmh3?>=S z`6Q;=XaC+}maBX|UcE+uClM^BWIp%W0?+Q=E>~ld(yw$v+hYVlx zOEE}XI8Wm6RBq~2=9R~~i#N`xyPFd;HFA#J$}1|<-&!MAp*v#`(#-y+EK<@`gwoMf zl=XvD^M)Df6I1ScsWR^_vYFF7P-md@#O5t10X1r1~8?O<<>)6M$k?fjo^2=+j?iz=Nx2$_Jt|Epwk?1)a&PZ$r3Fx zp*ZVxv2pN8d{}^rvmwl<4rTo9F}xSmjI*4#wRKnb$Tz(@N^wZCl$T1W46NLHPd|_P z8_u0-&^fD_++bzd(JDT*CBv~Q+A{LxQjq@thHW?2iJq6W|ael0u6t9|O- zeo3K&3rAR2Jeul+8^E@16|>80w{N_^f5_U&aT#A}h0!^(b!r{eAuzU~&Hq(>)dS;H zRFzU&RWThiTdxR-3)|WLTQKyKNMqlbbHs0%N?*drA+B)hBI<+EDbIMT3~yc6l)K~4G(%!~s4hFi!7cr?ph)eSIIoVN*3 zt78FriyGQxu=t}q@i1!4cPiN@H<0h~x6(9%vJki?-E$4Jydy`HyBK^LYd6Y)7^yvz zkBcx0VQkwE)U{=~qh!jNR^6s1^Hu)P;tM#VrA2hO6iZNjTstOL_pnZ-eO#^zF&9%)YNVF)KS72l!q(TeLv;P`^0 zlba!h<>PI!dFR}(zd>hfZsfIsj=yV)LZ)fYCt_X=eDy$0pswYnrI2&(dYsfdM`_$M zKTXl}1YW1sPBCX!152J{%8;cvz8C|!$B2XhrHfrGU*E=8Kj!azPSzZ}B&;mE<5fq! z1rxad_gaE_fb-B^r%W}A!47hz%PyDLS#J@E%6YxxnVqbZH_nl4+;(byhJ1n;gOxzV zi<5m^<;Gk|)5G}N7~d?9hkr%8sRaf^cLxSAODm71J|a_gQIDQP7ZMyD0gfWbomQ^_ zNe8wB7sQ5sYq?NgA)?Vi9z)cnYMnwUy-C@aGusrv>o2r~OO23`)39s+m?w1*wJ$8>%=1r@y=x3zKcoK`m8Pak6STvARpD&PSDAc(}b>3|J;8akuGYyvfnzF#EWvjM(6YD3J3q zQfTG0SJ(%XxW6#o`B1EoQ4pK;3Edg@US`Fq=?ejIF6(pktDwLSWH`aZ3=+ag?1mf! z0cggLb;(yvVo24kN??%@06^2Kff;0L;jchuBFtQ{%RQJBICX3*c%kpgvv#r>BPxyj1hQV0WhDtlmuaZj-ffWspA}82woDB}xt%iiRv9)k0QJ-T z!~3^Zru73y_DOcMYc0D)n(Wk+oK*EP zL)`#v><|ePqyKD>oJ6Z&JTjYV0}(~Rtyw@$yz`MOK!mPKoVI+WVe_hmPDWGZm}QcO z;{s!6TIMJ6Mh`vJwMqZgS5AuDgGL=2V~!n(C$8cx>MrnfwkDzk1kSa6wW6`^VpAm6 z$Crp-N`OYjKXwVfQg5~hCeob~B0Be$AbK~}h%I6g7CDd1lrZI+vTClX6B^UdH7^4y z_J}X>i{m>#_=Z+P18N>ulwU4g77LY3G~;c+!Y}u=9t%xewu2+M6MWA6AOaR<HRbsg zjfCJO9U0yAS;6X-SkG6{G7lx5m_lw1H@P#t8{w3tP^n2zb*W_&9i{Y)yA#+k`(mz6 z)ZnuzIF{TJke}Z6 zmjdicI#63tDCSoh{cS}~UGC$wl-9?5=LmpaA82Ll0@3P$3 zq3V#udWK!xZ$2)qcR;Q^extlWh*$~RT;E$sC9tgaFk9TTFgHM`W8VSvJvRm-v2yqN zy#i(gWJ9Atj22qX;b=5x>r$$=zxnEF_%NXDn&KlkYKfil1`1vBgLh;5^v<*@FABQ$ zpp79mWA|yLmVJSG4)-DIRE@wEdb;RWCXBN!-ylMBz%C-g<%1ZiGp~QGG_m!m_cHW5 zTjXlpb_yV$sK`YU7wG>G-(6dCzdNJ+tyAkbTZ5{}LNnQn`SLZ$GzaY8oiTb5ySWMp z6f1pz%-vgg9yN%p8n;x75N6zWcK6>^U}bh|{^m2>JGWCP&WptT@rdPSYcmG_4M@v; zNR2uY3R~b()-A~Z4vDg2-qzUVq9w8Ui1DXn5^olvy`J*V zKmW||1;h*e{Af*M(Km|F`6`#%m{8A=Fo8nxZREL~|Mz{2_>6zsiy43jCY929Ln@}blY0Y!~1|J*&7ml+L1OQ0Kxq%@T2}~qnE-c;E8e|UI2t-NyTbN0bz25A8VE%1Gw$K3;oA! zN%C#j==JkATaL4RuI@kbRieIUi~IIpYYLIg$OU9LsDW+C__7g%2xAaBHhP@SnrVBV zOkjS$^?wt)!pyEpwnO}GUB literal 0 HcmV?d00001 From b4b0fcdd897a207583c4957000d5aba71563d580 Mon Sep 17 00:00:00 2001 From: Darya Nechaeva Date: Fri, 1 May 2026 00:26:06 +0300 Subject: [PATCH 05/16] feat: add simple cli --- include/cli.h | 11 ++++++++++ src/lib/cli.c | 57 +++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 68 insertions(+) create mode 100644 include/cli.h create mode 100644 src/lib/cli.c diff --git a/include/cli.h b/include/cli.h new file mode 100644 index 0000000..52f1fad --- /dev/null +++ b/include/cli.h @@ -0,0 +1,11 @@ +#pragma once +#include "conv.h" + +typedef struct { + const char *input_path; + const char *output_path; + const char *filter_name; +} CliConfig; + +int cli_parse(int argc, char *argv[], CliConfig *cfg); +void cli_print_help(const char *prog_name); diff --git a/src/lib/cli.c b/src/lib/cli.c new file mode 100644 index 0000000..23eeadd --- /dev/null +++ b/src/lib/cli.c @@ -0,0 +1,57 @@ +#include "cli.h" +#include +#include +#include + +void cli_print_help(const char *prog) { + printf("Usage: %s --filter \n" + "Arguments:\n" + " input Input image (BMP/PNG/JPG)\n" + " output Output image (BMP/PNG/JPG)\n" + "Options:\n" + " --filter Filter: identity, blur, gaussian, sharpen, edges, emboss\n" + "Add suffix 5/7/9 for larger kernels (e.g., emboss9)\n" + " -h, --help Show this help\n" + "Example:\n" + " %s photo.bmp out.bmp --filter edges5 \n", + prog, prog); +} + +int cli_parse(int argc, char *argv[], CliConfig *cfg) { + cfg->input_path = NULL; + cfg->output_path = NULL; + cfg->filter_name = NULL; + int pos = 0; + + for (int i = 1; i < argc; ++i) { + if (strcmp(argv[i], "-h") == 0 || strcmp(argv[i], "--help") == 0) { + cli_print_help(argv[0]); + return 0; + } + if (strcmp(argv[i], "--filter") == 0) { + if (++i < argc) + cfg->filter_name = argv[i]; + else { + fprintf(stderr, "Error: --filter requires a value\n"); + return 0; + } + continue; + } + if (pos == 0) + cfg->input_path = argv[i]; + else if (pos == 1) + cfg->output_path = argv[i]; + else { + fprintf(stderr, "Error: too many positional arguments\n"); + return 0; + } + pos++; + } + + if (!cfg->input_path || !cfg->output_path || !cfg->filter_name) { + fprintf(stderr, "Error: missing required arguments\n"); + cli_print_help(argv[0]); + return 0; + } + return 1; +} From 6e9c6958b0d3415fe1f3af51dad946639c2d10db Mon Sep 17 00:00:00 2001 From: Darya Nechaeva Date: Fri, 1 May 2026 00:26:49 +0300 Subject: [PATCH 06/16] feat: add sequential convolution --- include/conv.h | 14 ++++++++++++++ src/lib/conv.c | 44 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 58 insertions(+) create mode 100644 include/conv.h create mode 100644 src/lib/conv.c diff --git a/include/conv.h b/include/conv.h new file mode 100644 index 0000000..3209683 --- /dev/null +++ b/include/conv.h @@ -0,0 +1,14 @@ +#pragma once + +#include "filters.h" +#include +#include + +typedef struct { + uint8_t *pixels; + size_t width; + size_t height; + int channels; +} Image; + +void convolve_sequential(const Image *input, Image *output, const struct Filter *filter); diff --git a/src/lib/conv.c b/src/lib/conv.c new file mode 100644 index 0000000..97d89b4 --- /dev/null +++ b/src/lib/conv.c @@ -0,0 +1,44 @@ +#include "conv.h" +#include +#include + +#define PIXEL_MIN 0 +#define PIXEL_MAX 255 +#define ROUNDING_OFFSET 0.5 + +void convolve_sequential(const Image *input, Image *output, const struct Filter *filter) { + const int radius = (int)(filter->size / 2); + const double factor = filter->factor; + const double bias = filter->bias; + const double *kernel = filter->data; + + const size_t width = input->width; + const size_t height = input->height; + const int channels = input->channels; + const size_t stride = width * channels; + + for (size_t y = 0; y < height; ++y) { + for (size_t x = 0; x < width; ++x) { + for (int c = 0; c < channels; ++c) { + double acc = 0.0; + for (int fy = 0; fy < (int)filter->size; ++fy) { + for (int fx = 0; fx < (int)filter->size; ++fx) { + int sy = (int)y + fy - radius; + int sx = (int)x + fx - radius; + sy %= (int)height; + if (sy < 0) sy += (int)height; + sx %= (int)width; + if (sx < 0) sx += (int)width; + double pixel = + input->pixels[(size_t)sy * stride + (size_t)sx * channels + (size_t)c]; + acc += kernel[fy * filter->size + fx] * pixel; + } + } + double value = acc * factor + bias; + if (value < PIXEL_MIN) value = PIXEL_MIN; + if (value > PIXEL_MAX) value = PIXEL_MAX; + output->pixels[y * stride + x * channels + c] = (uint8_t)(value + ROUNDING_OFFSET); + } + } + } +} From 841ef07843aee4e09ea46b18564f90446e659f09 Mon Sep 17 00:00:00 2001 From: Darya Nechaeva Date: Fri, 1 May 2026 00:29:47 +0300 Subject: [PATCH 07/16] tests: add tests for sequential convolution --- tests/test_conv.c | 222 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 222 insertions(+) create mode 100644 tests/test_conv.c diff --git a/tests/test_conv.c b/tests/test_conv.c new file mode 100644 index 0000000..dbb08ee --- /dev/null +++ b/tests/test_conv.c @@ -0,0 +1,222 @@ +#include +#include +#include +#include +#include +#include +#include +#include + +#include + +#include "conv.h" +#include "filters.h" +#include "stb_image.h" + +static Image *make_img(size_t w, size_t h, int ch, uint8_t fill) { + Image *img = malloc(sizeof(Image)); + img->width = w; + img->height = h; + img->channels = ch; + img->pixels = malloc(w * h * ch); + memset(img->pixels, fill, w * h * ch); + return img; +} + +static Image *rand_img(size_t w, size_t h, int ch, unsigned seed) { + Image *img = make_img(w, h, ch, 0); + srand(seed); + for (size_t i = 0; i < w * h * ch; i++) img->pixels[i] = (uint8_t)rand(); + return img; +} + +static void free_img(Image *img) { + if (img) { + free(img->pixels); + free(img); + } +} + +static bool img_equal(const Image *a, const Image *b) { + if (!a || !b || a->width != b->width || a->height != b->height || a->channels != b->channels) + return false; + return memcmp(a->pixels, b->pixels, a->width * a->height * a->channels) == 0; +} + +static struct Filter compose_filters(const struct Filter *a, const struct Filter *b) { + size_t new_sz = a->size + b->size - 1; + double *data = calloc(new_sz * new_sz, sizeof(double)); + for (size_t ay = 0; ay < a->size; ay++) + for (size_t ax = 0; ax < a->size; ax++) + for (size_t by = 0; by < b->size; by++) + for (size_t bx = 0; bx < b->size; bx++) + data[(ay + by) * new_sz + (ax + bx)] += + a->data[ay * a->size + ax] * b->data[by * b->size + bx]; + return (struct Filter){new_sz, data, a->factor * b->factor, 0.0}; +} + +static struct Filter pad_filter(const struct Filter *src, size_t new_sz) { + double *data = calloc(new_sz * new_sz, sizeof(double)); + size_t off = (new_sz - src->size) / 2; + for (size_t y = 0; y < src->size; y++) + for (size_t x = 0; x < src->size; x++) + data[(y + off) * new_sz + (x + off)] = src->data[y * src->size + x]; + return (struct Filter){new_sz, data, src->factor, src->bias}; +} + +static void test_tiny_manual_calc(void **state) { + (void)state; + + uint8_t input[] = {10, 20, 30, 40, 50, 60, 70, 80, 90}; + uint8_t expected_left[] = {20, 30, 10, 50, 60, 40, 80, 90, 70}; + double kernel_shift_left[9] = {0, 0, 0, 0, 0, 1, 0, 0, 0}; + struct Filter f_left = {.size = 3, .data = kernel_shift_left, .factor = 1.0, .bias = 0.0}; + + Image src = {.pixels = input, .width = 3, .height = 3, .channels = 1}; + uint8_t out[9]; + Image dst = {.pixels = out, .width = 3, .height = 3, .channels = 1}; + + convolve_sequential(&src, &dst, &f_left); + assert_memory_equal(out, expected_left, 9); + + uint8_t expected_right[] = {30, 10, 20, 60, 40, 50, 90, 70, 80}; + double kernel_shift_right[9] = {0, 0, 0, 1, 0, 0, 0, 0, 0}; + struct Filter f_right = {.size = 3, .data = kernel_shift_right, .factor = 1.0, .bias = 0.0}; + + convolve_sequential(&src, &dst, &f_right); + assert_memory_equal(out, expected_right, 9); +} + +static void test_property_identity(void **state) { + (void)state; + Image *src = rand_img(128, 96, 3, 42); + Image *dst = make_img(128, 96, 3, 0); + struct Filter id = filter_identity(); + convolve_sequential(src, dst, &id); + assert_true(img_equal(src, dst)); + free_img(src); + free_img(dst); +} + +static void test_property_zero_factor(void **state) { + (void)state; + Image *src = rand_img(64, 64, 3, 123); + Image *dst = make_img(64, 64, 3, 255); + double dummy[9] = {1, 2, 3, 4, 5, 6, 7, 8, 9}; + struct Filter f = {.size = 3, .data = dummy, .factor = 0.0, .bias = 0.0}; + convolve_sequential(src, dst, &f); + for (size_t i = 0; i < dst->width * dst->height * dst->channels; i++) + assert_int_equal(dst->pixels[i], 0); + free_img(src); + free_img(dst); +} + +static void test_property_composition(void **state) { + (void)state; + + double sl_data[9] = {0, 0, 0, 0, 0, 1, 0, 0, 0}; + double sr_data[9] = {0, 0, 0, 1, 0, 0, 0, 0, 0}; + + struct Filter shift_left = {.size = 3, .data = sl_data, .factor = 1.0, .bias = 0.0}; + struct Filter shift_right = {.size = 3, .data = sr_data, .factor = 1.0, .bias = 0.0}; + + struct Filter comp_ll = compose_filters(&shift_left, &shift_left); + struct Filter comp_rl = compose_filters(&shift_right, &shift_left); + + Image *src = rand_img(80, 60, 3, 777); + + Image *tmp = make_img(80, 60, 3, 0); + Image *two_sl = make_img(80, 60, 3, 0); + Image *one_ll = make_img(80, 60, 3, 0); + + convolve_sequential(src, tmp, &shift_left); + convolve_sequential(tmp, two_sl, &shift_left); + convolve_sequential(src, one_ll, &comp_ll); + assert_true(img_equal(two_sl, one_ll)); + + Image *two_rl = make_img(80, 60, 3, 0); + Image *one_id = make_img(80, 60, 3, 0); + + convolve_sequential(src, tmp, &shift_left); + convolve_sequential(tmp, two_rl, &shift_right); + convolve_sequential(src, one_id, &comp_rl); + assert_true(img_equal(two_rl, one_id)); + assert_true(img_equal(two_rl, src)); + + free(comp_ll.data); + free(comp_rl.data); + free_img(src); + free_img(tmp); + free_img(two_sl); + free_img(one_ll); + free_img(two_rl); + free_img(one_id); +} + +static void test_property_shift_inverse(void **state) { + (void)state; + double right[9] = {0, 0, 0, 0, 0, 1, 0, 0, 0}; + double left[9] = {0, 0, 0, 1, 0, 0, 0, 0, 0}; + struct Filter sr = {.size = 3, .data = right, .factor = 1.0, .bias = 0.0}; + struct Filter sl = {.size = 3, .data = left, .factor = 1.0, .bias = 0.0}; + + Image *src = rand_img(32, 32, 3, 999); + Image *tmp = make_img(32, 32, 3, 0); + Image *res = make_img(32, 32, 3, 0); + + convolve_sequential(src, tmp, &sr); + convolve_sequential(tmp, res, &sl); + assert_true(img_equal(src, res)); + + free_img(src); + free_img(tmp); + free_img(res); +} + +static void test_property_zero_padding(void **state) { + (void)state; + struct Filter f3 = filter_blur(); + struct Filter f5 = pad_filter(&f3, 5); + + Image *src = rand_img(50, 40, 3, 4242); + Image *dst3 = make_img(50, 40, 3, 0); + Image *dst5 = make_img(50, 40, 3, 0); + + convolve_sequential(src, dst3, &f3); + convolve_sequential(src, dst5, &f5); + assert_true(img_equal(dst3, dst5)); + + free(f5.data); + free_img(src); + free_img(dst3); + free_img(dst5); +} + +static void test_property_various_sizes(void **state) { + (void)state; + + const size_t widths[] = {1, 2, 3, 7, 15, 16, 17, 63, 64, 65, 100, 256}; + const size_t heights[] = {1, 2, 3, 7, 15, 16, 17, 63, 64, 65, 100, 200}; + const size_t n = sizeof(widths) / sizeof(widths[0]); + + for (size_t i = 0; i < n; i++) { + size_t w = widths[i], h = heights[i]; + Image *src = rand_img(w, h, 3, (unsigned)(i * 1234 + 5678)); + Image *dst = make_img(w, h, 3, 0); + struct Filter id = filter_identity(); + convolve_sequential(src, dst, &id); + assert_true(img_equal(src, dst)); + free_img(src); + free_img(dst); + } +} + +int main(void) { + const struct CMUnitTest tests[] = { + cmocka_unit_test(test_tiny_manual_calc), cmocka_unit_test(test_property_identity), + cmocka_unit_test(test_property_zero_factor), cmocka_unit_test(test_property_composition), + cmocka_unit_test(test_property_shift_inverse), cmocka_unit_test(test_property_zero_padding), + cmocka_unit_test(test_property_various_sizes), + }; + return cmocka_run_group_tests(tests, NULL, NULL); +} From 9dcfb3091dedddc48855809758ff83a3e642f97b Mon Sep 17 00:00:00 2001 From: Darya Nechaeva Date: Fri, 1 May 2026 00:30:15 +0300 Subject: [PATCH 08/16] chore: add README --- README.md | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/README.md b/README.md index e69de29..13145d2 100644 --- a/README.md +++ b/README.md @@ -0,0 +1,27 @@ +# Image Convolution — Task 1: Sequential + +Simple CLI tool for applying convolution filters images. + +## Build & Run + +```bash +make # build +./conv in.bmp out.bmp --filter sharpen # apply filter +make test # run tests +``` + +## Usage + +```bash +./conv --filter +``` + +**Filters**: identity, blur, gaussian, sharpen, edges, emboss + +**Formats**: BMP, PNG, JPEG + +## Example + +```bash +./conv photo.jpg result.png --filter edges +``` From 8e5787a270f43fe3ce4b57b917e5f920b32146b4 Mon Sep 17 00:00:00 2001 From: Darya Nechaeva Date: Fri, 1 May 2026 00:30:37 +0300 Subject: [PATCH 09/16] feat: add main function --- src/main.c | 101 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 101 insertions(+) diff --git a/src/main.c b/src/main.c index e69de29..8449ef1 100644 --- a/src/main.c +++ b/src/main.c @@ -0,0 +1,101 @@ +#define STB_IMAGE_IMPLEMENTATION +#include "stb_image.h" + +#define STB_IMAGE_WRITE_IMPLEMENTATION +#include "stb_image_write.h" + +#include "cli.h" +#include "conv.h" +#include "filters.h" + +#include +#include +#include + +#define MAX_EXT_LEN 16 +#define DEFAULT_JPEG_QUALITY 95 + +static const char *get_extension(const char *path) { + if (!path) return ""; + const char *dot = strrchr(path, '.'); + if (!dot || dot[1] == '\0') return ""; + return dot + 1; +} + +static int write_image(const char *path, int w, int h, int channels, const uint8_t *pixels) { + const char *ext = get_extension(path); + int result = 0; + char ext_lower[MAX_EXT_LEN] = {0}; + for (int i = 0; ext[i] && i < (MAX_EXT_LEN - 1); i++) { + ext_lower[i] = tolower((unsigned char)ext[i]); + } + if (strcmp(ext_lower, "png") == 0) { + result = stbi_write_png(path, w, h, channels, pixels, 0); + } else if (strcmp(ext_lower, "jpg") == 0 || strcmp(ext_lower, "jpeg") == 0) { + result = stbi_write_jpg(path, w, h, channels, pixels, DEFAULT_JPEG_QUALITY); + } else if (strcmp(ext_lower, "bmp") == 0) { + result = stbi_write_bmp(path, w, h, channels, pixels); + } else { + fprintf(stderr, "Warning: unsupported extension '.%s', saving as BMP\n", ext); + result = stbi_write_bmp(path, w, h, channels, pixels); + } + return result; +} + +int main(int argc, char *argv[]) { + CliConfig cfg; + if (cli_parse(argc, argv, &cfg) != 1) { + return 1; + } + + struct Filter filter; + int filter_found = 0; + for (size_t i = 0; i < filter_count; ++i) { + if (strcmp(cfg.filter_name, filter_list[i].name) == 0) { + filter = filter_list[i].create(); + filter_found = 1; + break; + } + } + if (!filter_found) { + fprintf(stderr, "Error: unknown filter '%s'\n", cfg.filter_name); + fprintf(stderr, "Available:"); + for (size_t i = 0; i < filter_count; ++i) { + fprintf(stderr, " %s", filter_list[i].name); + } + fprintf(stderr, "\n"); + return 1; + } + int w = 0, h = 0, ch = 0; + uint8_t *src_pixels = stbi_load(cfg.input_path, &w, &h, &ch, 3); + if (!src_pixels) { + fprintf(stderr, "Error: failed to load image '%s'\n", cfg.input_path); + return 1; + } + Image src = {.pixels = src_pixels, .width = (size_t)w, .height = (size_t)h, .channels = ch}; + + size_t total_bytes = (size_t)w * h * src.channels; + uint8_t *dst_pixels = malloc(total_bytes); + if (!dst_pixels) { + fprintf(stderr, "Error: out of memory\n"); + stbi_image_free(src_pixels); + return 1; + } + Image dst = { + .pixels = dst_pixels, .width = (size_t)w, .height = (size_t)h, .channels = src.channels}; + + convolve_sequential(&src, &dst, &filter); + + if (write_image(cfg.output_path, w, h, dst.channels, dst.pixels) == 0) { + fprintf(stderr, "Error: failed to save image to '%s'\n", cfg.output_path); + free(dst_pixels); + stbi_image_free(src_pixels); + return 1; + } + printf("Done input: %s, output: %s, filter: %s (size: %zu)\n", cfg.input_path, cfg.output_path, + cfg.filter_name, filter.size); + + free(dst_pixels); + stbi_image_free(src_pixels); + return 0; +} From ccadaff0449815e63d3b1c5b4cd15a4d6e9a4cf9 Mon Sep 17 00:00:00 2001 From: Darya Nechaeva Date: Fri, 1 May 2026 00:32:58 +0300 Subject: [PATCH 10/16] feat: add utility library file --- third_party/stb/stb_image.h | 8147 +++++++++++++++++++++++++++++++++++ 1 file changed, 8147 insertions(+) diff --git a/third_party/stb/stb_image.h b/third_party/stb/stb_image.h index e69de29..5c02139 100644 --- a/third_party/stb/stb_image.h +++ b/third_party/stb/stb_image.h @@ -0,0 +1,8147 @@ +/* stb_image - v2.30 - public domain image loader - http://nothings.org/stb + no warranty implied; use at your own risk + + Do this: + #define STB_IMAGE_IMPLEMENTATION + before you include this file in *one* C or C++ file to create the +implementation. + + // i.e. it should look like this: + #include ... + #include ... + #include ... + #define STB_IMAGE_IMPLEMENTATION + #include "stb_image.h" + + You can #define STBI_ASSERT(x) before the #include to avoid using assert.h. + And #define STBI_MALLOC, STBI_REALLOC, and STBI_FREE to avoid using +malloc,realloc,free + + + QUICK NOTES: + Primarily of interest to game developers and other people who can + avoid problematic images and only need the trivial interface + + JPEG baseline & progressive (12 bpc/arithmetic not supported, same as +stock IJG lib) PNG 1/2/4/8/16-bit-per-channel + + TGA (not sure what subset, if a subset) + BMP non-1bpp, non-RLE + PSD (composited view only, no extra channels, 8/16 bit-per-channel) + + GIF (*comp always reports as 4-channel) + HDR (radiance rgbE format) + PIC (Softimage PIC) + PNM (PPM and PGM binary only) + + Animated GIF still needs a proper API, but here's one way to do it: + http://gist.github.com/urraka/685d9a6340b26b830d49 + + - decode from memory or through FILE (define STBI_NO_STDIO to remove code) + - decode from arbitrary I/O callbacks + - SIMD acceleration on x86/x64 (SSE2) and ARM (NEON) + + Full documentation under "DOCUMENTATION" below. + + +LICENSE + + See end of file for license information. + +RECENT REVISION HISTORY: + + 2.30 (2024-05-31) avoid erroneous gcc warning + 2.29 (2023-05-xx) optimizations + 2.28 (2023-01-29) many error fixes, security errors, just tons of stuff + 2.27 (2021-07-11) document stbi_info better, 16-bit PNM support, bug +fixes 2.26 (2020-07-13) many minor fixes 2.25 (2020-02-02) fix warnings 2.24 +(2020-02-02) fix warnings; thread-local failure_reason and flip_vertically 2.23 +(2019-08-11) fix clang static analysis warning 2.22 (2019-03-04) gif fixes, fix +warnings 2.21 (2019-02-25) fix typo in comment 2.20 (2019-02-07) support utf8 +filenames in Windows; fix warnings and platform ifdefs 2.19 (2018-02-11) fix +warning 2.18 (2018-01-30) fix warnings 2.17 (2018-01-29) bugfix, 1-bit BMP, +16-bitness query, fix warnings 2.16 (2017-07-23) all functions have 16-bit +variants; optimizations; bugfixes 2.15 (2017-03-18) fix png-1,2,4; all Imagenet +JPGs; no runtime SSE detection on GCC 2.14 (2017-03-03) remove deprecated +STBI_JPEG_OLD; fixes for Imagenet JPGs 2.13 (2016-12-04) experimental 16-bit +API, only for PNG so far; fixes 2.12 (2016-04-02) fix typo in 2.11 PSD fix that +caused crashes 2.11 (2016-04-02) 16-bit PNGS; enable SSE2 in non-gcc x64 + RGB-format JPEG; remove white matting in PSD; + allocate large structures on the stack; + correct channel count for PNG & BMP + 2.10 (2016-01-22) avoid warning introduced in 2.09 + 2.09 (2016-01-16) 16-bit TGA; comments in PNM files; STBI_REALLOC_SIZED + + See end of file for full revision history. + + + ============================ Contributors ========================= + + Image formats Extensions, features + Sean Barrett (jpeg, png, bmp) Jetro Lauha (stbi_info) + Nicolas Schulz (hdr, psd) Martin "SpartanJ" Golini (stbi_info) + Jonathan Dummer (tga) James "moose2000" Brown (iPhone PNG) + Jean-Marc Lienher (gif) Ben "Disch" Wenger (io callbacks) + Tom Seddon (pic) Omar Cornut (1/2/4-bit PNG) + Thatcher Ulrich (psd) Nicolas Guillemot (vertical flip) + Ken Miller (pgm, ppm) Richard Mitton (16-bit PSD) + github:urraka (animated gif) Junggon Kim (PNM comments) + Christopher Forseth (animated gif) Daniel Gibson (16-bit TGA) + socks-the-fox (16-bit PNG) + Jeremy Sawicki (handle all ImageNet +JPGs) Optimizations & bugfixes Mikhail Morozov (1-bit BMP) + Fabian "ryg" Giesen Anael Seghezzi (is-16-bit query) + Arseny Kapoulkine Simon Breuss (16-bit PNM) + John-Mark Allen + Carmelo J Fdez-Aguera + + Bug & warning fixes + Marc LeBlanc David Woo Guillaume George Martins +Mozeiko Christpher Lloyd Jerry Jansson Joseph Thomson Blazej +Dariusz Roszkowski Phil Jordan Dave Moore Roy +Eltham Hayaki Saito Nathan Reed Won Chun Luke Graham Johan +Duparc Nick Verigakis the Horde3D community Thomas Ruf Ronny +Chevalier github:rlyeh Janez Zemva John +Bartholomew Michal Cichon github:romigrou Jonathan Blow Ken +Hamada Tero Hanninen github:svdijk Eugene Golushkov Laurent +Gomila Cort Stratton github:snagar Aruelien Pocheville Sergio +Gonzalez Thibault Reuille github:Zelex Cass Everitt Ryamond +Barbiero github:grim210 Paul Du Bois Engin +Manap Aldo Culquicondor github:sammyhw Philipp Wiesemann Dale +Weiler Oriol Ferrer Mesia github:phprus Josh Tobin Neil +Bickford Matthew Gregan github:poppolopoppo Julian Raschke Gregory +Mullen Christian Floisand github:darealshinji Baldur Karlsson Kevin +Schmidt JR Smith github:Michaelangel007 Brad Weinberger Matvey +Cherevko github:mosra Luca Sas Alexander Veselov Zack +Middleton [reserved] Ryan C. Gordon [reserved] [reserved] DO NOT +ADD YOUR NAME HERE + + Jacko Dirks + + To add your name to the credits, pick a random blank space in the middle and +fill it. 80% of merge conflicts on stb PRs are due to people adding their name +at the end of the credits. +*/ + +#ifndef STBI_INCLUDE_STB_IMAGE_H +#define STBI_INCLUDE_STB_IMAGE_H + +// DOCUMENTATION +// +// Limitations: +// - no 12-bit-per-channel JPEG +// - no JPEGs with arithmetic coding +// - GIF always returns *comp=4 +// +// Basic usage (see HDR discussion below for HDR usage): +// int x,y,n; +// unsigned char *data = stbi_load(filename, &x, &y, &n, 0); +// // ... process data if not NULL ... +// // ... x = width, y = height, n = # 8-bit components per pixel ... +// // ... replace '0' with '1'..'4' to force that many components per pixel +// // ... but 'n' will always be the number that it would have been if you +// said 0 stbi_image_free(data); +// +// Standard parameters: +// int *x -- outputs image width in pixels +// int *y -- outputs image height in pixels +// int *channels_in_file -- outputs # of image components in image file +// int desired_channels -- if non-zero, # of image components requested in +// result +// +// The return value from an image loader is an 'unsigned char *' which points +// to the pixel data, or NULL on an allocation failure or if the image is +// corrupt or invalid. The pixel data consists of *y scanlines of *x pixels, +// with each pixel consisting of N interleaved 8-bit components; the first +// pixel pointed to is top-left-most in the image. There is no padding between +// image scanlines or between pixels, regardless of format. The number of +// components N is 'desired_channels' if desired_channels is non-zero, or +// *channels_in_file otherwise. If desired_channels is non-zero, +// *channels_in_file has the number of components that _would_ have been +// output otherwise. E.g. if you set desired_channels to 4, you will always +// get RGBA output, but you can check *channels_in_file to see if it's trivially +// opaque because e.g. there were only 3 channels in the source image. +// +// An output image with N components has the following components interleaved +// in this order in each pixel: +// +// N=#comp components +// 1 grey +// 2 grey, alpha +// 3 red, green, blue +// 4 red, green, blue, alpha +// +// If image loading fails for any reason, the return value will be NULL, +// and *x, *y, *channels_in_file will be unchanged. The function +// stbi_failure_reason() can be queried for an extremely brief, end-user +// unfriendly explanation of why the load failed. Define STBI_NO_FAILURE_STRINGS +// to avoid compiling these strings at all, and STBI_FAILURE_USERMSG to get +// slightly more user-friendly ones. +// +// Paletted PNG, BMP, GIF, and PIC images are automatically depalettized. +// +// To query the width, height and component count of an image without having to +// decode the full file, you can use the stbi_info family of functions: +// +// int x,y,n,ok; +// ok = stbi_info(filename, &x, &y, &n); +// // returns ok=1 and sets x, y, n if image is a supported format, +// // 0 otherwise. +// +// Note that stb_image pervasively uses ints in its public API for sizes, +// including sizes of memory buffers. This is now part of the API and thus +// hard to change without causing breakage. As a result, the various image +// loaders all have certain limits on image size; these differ somewhat +// by format but generally boil down to either just under 2GB or just under +// 1GB. When the decoded image would be larger than this, stb_image decoding +// will fail. +// +// Additionally, stb_image will reject image files that have any of their +// dimensions set to a larger value than the configurable STBI_MAX_DIMENSIONS, +// which defaults to 2**24 = 16777216 pixels. Due to the above memory limit, +// the only way to have an image with such dimensions load correctly +// is for it to have a rather extreme aspect ratio. Either way, the +// assumption here is that such larger images are likely to be malformed +// or malicious. If you do need to load an image with individual dimensions +// larger than that, and it still fits in the overall size limit, you can +// #define STBI_MAX_DIMENSIONS on your own to be something larger. +// +// =========================================================================== +// +// UNICODE: +// +// If compiling for Windows and you wish to use Unicode filenames, compile +// with +// #define STBI_WINDOWS_UTF8 +// and pass utf8-encoded filenames. Call stbi_convert_wchar_to_utf8 to convert +// Windows wchar_t filenames to utf8. +// +// =========================================================================== +// +// Philosophy +// +// stb libraries are designed with the following priorities: +// +// 1. easy to use +// 2. easy to maintain +// 3. good performance +// +// Sometimes I let "good performance" creep up in priority over "easy to +// maintain", and for best performance I may provide less-easy-to-use APIs that +// give higher performance, in addition to the easy-to-use ones. Nevertheless, +// it's important to keep in mind that from the standpoint of you, a client of +// this library, all you care about is #1 and #3, and stb libraries DO NOT +// emphasize #3 above all. +// +// Some secondary priorities arise directly from the first two, some of which +// provide more explicit reasons why performance can't be emphasized. +// +// - Portable ("ease of use") +// - Small source code footprint ("easy to maintain") +// - No dependencies ("ease of use") +// +// =========================================================================== +// +// I/O callbacks +// +// I/O callbacks allow you to read from arbitrary sources, like packaged +// files or some other source. Data read from callbacks are processed +// through a small internal buffer (currently 128 bytes) to try to reduce +// overhead. +// +// The three functions you must define are "read" (reads some bytes of data), +// "skip" (skips some bytes of data), "eof" (reports if the stream is at the +// end). +// +// =========================================================================== +// +// SIMD support +// +// The JPEG decoder will try to automatically use SIMD kernels on x86 when +// supported by the compiler. For ARM Neon support, you must explicitly +// request it. +// +// (The old do-it-yourself SIMD API is no longer supported in the current +// code.) +// +// On x86, SSE2 will automatically be used when available based on a run-time +// test; if not, the generic C versions are used as a fall-back. On ARM targets, +// the typical path is to have separate builds for NEON and non-NEON devices +// (at least this is true for iOS and Android). Therefore, the NEON support is +// toggled by a build flag: define STBI_NEON to get NEON loops. +// +// If for some reason you do not want to use any of SIMD code, or if +// you have issues compiling it, you can disable it entirely by +// defining STBI_NO_SIMD. +// +// =========================================================================== +// +// HDR image support (disable by defining STBI_NO_HDR) +// +// stb_image supports loading HDR images in general, and currently the Radiance +// .HDR file format specifically. You can still load any file through the +// existing interface; if you attempt to load an HDR file, it will be +// automatically remapped to LDR, assuming gamma 2.2 and an arbitrary scale +// factor defaulting to 1; both of these constants can be reconfigured through +// this interface: +// +// stbi_hdr_to_ldr_gamma(2.2f); +// stbi_hdr_to_ldr_scale(1.0f); +// +// (note, do not use _inverse_ constants; stbi_image will invert them +// appropriately). +// +// Additionally, there is a new, parallel interface for loading files as +// (linear) floats to preserve the full dynamic range: +// +// float *data = stbi_loadf(filename, &x, &y, &n, 0); +// +// If you load LDR images through this interface, those images will +// be promoted to floating point values, run through the inverse of +// constants corresponding to the above: +// +// stbi_ldr_to_hdr_scale(1.0f); +// stbi_ldr_to_hdr_gamma(2.2f); +// +// Finally, given a filename (or an open file or memory block--see header +// file for details) containing image data, you can query for the "most +// appropriate" interface to use (that is, whether the image is HDR or +// not), using: +// +// stbi_is_hdr(char *filename); +// +// =========================================================================== +// +// iPhone PNG support: +// +// We optionally support converting iPhone-formatted PNGs (which store +// premultiplied BGRA) back to RGB, even though they're internally encoded +// differently. To enable this conversion, call +// stbi_convert_iphone_png_to_rgb(1). +// +// Call stbi_set_unpremultiply_on_load(1) as well to force a divide per +// pixel to remove any premultiplied alpha *only* if the image file explicitly +// says there's premultiplied data (currently only happens in iPhone images, +// and only if iPhone convert-to-rgb processing is on). +// +// =========================================================================== +// +// ADDITIONAL CONFIGURATION +// +// - You can suppress implementation of any of the decoders to reduce +// your code footprint by #defining one or more of the following +// symbols before creating the implementation. +// +// STBI_NO_JPEG +// STBI_NO_PNG +// STBI_NO_BMP +// STBI_NO_PSD +// STBI_NO_TGA +// STBI_NO_GIF +// STBI_NO_HDR +// STBI_NO_PIC +// STBI_NO_PNM (.ppm and .pgm) +// +// - You can request *only* certain decoders and suppress all other ones +// (this will be more forward-compatible, as addition of new decoders +// doesn't require you to disable them explicitly): +// +// STBI_ONLY_JPEG +// STBI_ONLY_PNG +// STBI_ONLY_BMP +// STBI_ONLY_PSD +// STBI_ONLY_TGA +// STBI_ONLY_GIF +// STBI_ONLY_HDR +// STBI_ONLY_PIC +// STBI_ONLY_PNM (.ppm and .pgm) +// +// - If you use STBI_NO_PNG (or _ONLY_ without PNG), and you still +// want the zlib decoder to be available, #define STBI_SUPPORT_ZLIB +// +// - If you define STBI_MAX_DIMENSIONS, stb_image will reject images greater +// than that size (in either width or height) without further processing. +// This is to let programs in the wild set an upper bound to prevent +// denial-of-service attacks on untrusted data, as one could generate a +// valid image of gigantic dimensions and force stb_image to allocate a +// huge block of memory and spend disproportionate time decoding it. By +// default this is set to (1 << 24), which is 16777216, but that's still +// very big. + +#ifndef STBI_NO_STDIO +#include +#endif // STBI_NO_STDIO + +#define STBI_VERSION 1 + +enum { + STBI_default = 0, // only used for desired_channels + + STBI_grey = 1, + STBI_grey_alpha = 2, + STBI_rgb = 3, + STBI_rgb_alpha = 4 +}; + +#include +typedef unsigned char stbi_uc; +typedef unsigned short stbi_us; + +#ifdef __cplusplus +extern "C" { +#endif + +#ifndef STBIDEF +#ifdef STB_IMAGE_STATIC +#define STBIDEF static +#else +#define STBIDEF extern +#endif +#endif + +////////////////////////////////////////////////////////////////////////////// +// +// PRIMARY API - works on images of any type +// + +// +// load image by filename, open file, or memory buffer +// + +typedef struct { + int (*read)(void *user, char *data, + int size); // fill 'data' with 'size' bytes. return number of + // bytes actually read + void (*skip)(void *user, int n); // skip the next 'n' bytes, or 'unget' the + // last -n bytes if negative + int (*eof)(void *user); // returns nonzero if we are at end of file/data +} stbi_io_callbacks; + +//////////////////////////////////// +// +// 8-bits-per-channel interface +// + +STBIDEF stbi_uc *stbi_load_from_memory(stbi_uc const *buffer, int len, int *x, int *y, + int *channels_in_file, int desired_channels); +STBIDEF stbi_uc *stbi_load_from_callbacks(stbi_io_callbacks const *clbk, void *user, int *x, int *y, + int *channels_in_file, int desired_channels); + +#ifndef STBI_NO_STDIO +STBIDEF stbi_uc *stbi_load(char const *filename, int *x, int *y, int *channels_in_file, + int desired_channels); +STBIDEF stbi_uc *stbi_load_from_file(FILE *f, int *x, int *y, int *channels_in_file, + int desired_channels); +// for stbi_load_from_file, file pointer is left pointing immediately after +// image +#endif + +#ifndef STBI_NO_GIF +STBIDEF stbi_uc *stbi_load_gif_from_memory(stbi_uc const *buffer, int len, int **delays, int *x, + int *y, int *z, int *comp, int req_comp); +#endif + +#ifdef STBI_WINDOWS_UTF8 +STBIDEF int stbi_convert_wchar_to_utf8(char *buffer, size_t bufferlen, const wchar_t *input); +#endif + +//////////////////////////////////// +// +// 16-bits-per-channel interface +// + +STBIDEF stbi_us *stbi_load_16_from_memory(stbi_uc const *buffer, int len, int *x, int *y, + int *channels_in_file, int desired_channels); +STBIDEF stbi_us *stbi_load_16_from_callbacks(stbi_io_callbacks const *clbk, void *user, int *x, + int *y, int *channels_in_file, int desired_channels); + +#ifndef STBI_NO_STDIO +STBIDEF stbi_us *stbi_load_16(char const *filename, int *x, int *y, int *channels_in_file, + int desired_channels); +STBIDEF stbi_us *stbi_load_from_file_16(FILE *f, int *x, int *y, int *channels_in_file, + int desired_channels); +#endif + +//////////////////////////////////// +// +// float-per-channel interface +// +#ifndef STBI_NO_LINEAR +STBIDEF float *stbi_loadf_from_memory(stbi_uc const *buffer, int len, int *x, int *y, + int *channels_in_file, int desired_channels); +STBIDEF float *stbi_loadf_from_callbacks(stbi_io_callbacks const *clbk, void *user, int *x, int *y, + int *channels_in_file, int desired_channels); + +#ifndef STBI_NO_STDIO +STBIDEF float *stbi_loadf(char const *filename, int *x, int *y, int *channels_in_file, + int desired_channels); +STBIDEF float *stbi_loadf_from_file(FILE *f, int *x, int *y, int *channels_in_file, + int desired_channels); +#endif +#endif + +#ifndef STBI_NO_HDR +STBIDEF void stbi_hdr_to_ldr_gamma(float gamma); +STBIDEF void stbi_hdr_to_ldr_scale(float scale); +#endif // STBI_NO_HDR + +#ifndef STBI_NO_LINEAR +STBIDEF void stbi_ldr_to_hdr_gamma(float gamma); +STBIDEF void stbi_ldr_to_hdr_scale(float scale); +#endif // STBI_NO_LINEAR + +// stbi_is_hdr is always defined, but always returns false if STBI_NO_HDR +STBIDEF int stbi_is_hdr_from_callbacks(stbi_io_callbacks const *clbk, void *user); +STBIDEF int stbi_is_hdr_from_memory(stbi_uc const *buffer, int len); +#ifndef STBI_NO_STDIO +STBIDEF int stbi_is_hdr(char const *filename); +STBIDEF int stbi_is_hdr_from_file(FILE *f); +#endif // STBI_NO_STDIO + +// get a VERY brief reason for failure +// on most compilers (and ALL modern mainstream compilers) this is threadsafe +STBIDEF const char *stbi_failure_reason(void); + +// free the loaded image -- this is just free() +STBIDEF void stbi_image_free(void *retval_from_stbi_load); + +// get image dimensions & components without fully decoding +STBIDEF int stbi_info_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *comp); +STBIDEF int stbi_info_from_callbacks(stbi_io_callbacks const *clbk, void *user, int *x, int *y, + int *comp); +STBIDEF int stbi_is_16_bit_from_memory(stbi_uc const *buffer, int len); +STBIDEF int stbi_is_16_bit_from_callbacks(stbi_io_callbacks const *clbk, void *user); + +#ifndef STBI_NO_STDIO +STBIDEF int stbi_info(char const *filename, int *x, int *y, int *comp); +STBIDEF int stbi_info_from_file(FILE *f, int *x, int *y, int *comp); +STBIDEF int stbi_is_16_bit(char const *filename); +STBIDEF int stbi_is_16_bit_from_file(FILE *f); +#endif + +// for image formats that explicitly notate that they have premultiplied alpha, +// we just return the colors as stored in the file. set this flag to force +// unpremultiplication. results are undefined if the unpremultiply overflow. +STBIDEF void stbi_set_unpremultiply_on_load(int flag_true_if_should_unpremultiply); + +// indicate whether we should process iphone images back to canonical format, +// or just pass them through "as-is" +STBIDEF void stbi_convert_iphone_png_to_rgb(int flag_true_if_should_convert); + +// flip the image vertically, so the first pixel in the output array is the +// bottom left +STBIDEF void stbi_set_flip_vertically_on_load(int flag_true_if_should_flip); + +// as above, but only applies to images loaded on the thread that calls the +// function this function is only available if your compiler supports +// thread-local variables; calling it will fail to link if your compiler doesn't +STBIDEF void stbi_set_unpremultiply_on_load_thread(int flag_true_if_should_unpremultiply); +STBIDEF void stbi_convert_iphone_png_to_rgb_thread(int flag_true_if_should_convert); +STBIDEF void stbi_set_flip_vertically_on_load_thread(int flag_true_if_should_flip); + +// ZLIB client - used by PNG, available for other purposes + +STBIDEF char *stbi_zlib_decode_malloc_guesssize(const char *buffer, int len, int initial_size, + int *outlen); +STBIDEF char *stbi_zlib_decode_malloc_guesssize_headerflag(const char *buffer, int len, + int initial_size, int *outlen, + int parse_header); +STBIDEF char *stbi_zlib_decode_malloc(const char *buffer, int len, int *outlen); +STBIDEF int stbi_zlib_decode_buffer(char *obuffer, int olen, const char *ibuffer, int ilen); + +STBIDEF char *stbi_zlib_decode_noheader_malloc(const char *buffer, int len, int *outlen); +STBIDEF int stbi_zlib_decode_noheader_buffer(char *obuffer, int olen, const char *ibuffer, + int ilen); + +#ifdef __cplusplus +} +#endif + +// +// +//// end header file ///////////////////////////////////////////////////// +#endif // STBI_INCLUDE_STB_IMAGE_H + +#ifdef STB_IMAGE_IMPLEMENTATION + +#if defined(STBI_ONLY_JPEG) || defined(STBI_ONLY_PNG) || defined(STBI_ONLY_BMP) || \ + defined(STBI_ONLY_TGA) || defined(STBI_ONLY_GIF) || defined(STBI_ONLY_PSD) || \ + defined(STBI_ONLY_HDR) || defined(STBI_ONLY_PIC) || defined(STBI_ONLY_PNM) || \ + defined(STBI_ONLY_ZLIB) +#ifndef STBI_ONLY_JPEG +#define STBI_NO_JPEG +#endif +#ifndef STBI_ONLY_PNG +#define STBI_NO_PNG +#endif +#ifndef STBI_ONLY_BMP +#define STBI_NO_BMP +#endif +#ifndef STBI_ONLY_PSD +#define STBI_NO_PSD +#endif +#ifndef STBI_ONLY_TGA +#define STBI_NO_TGA +#endif +#ifndef STBI_ONLY_GIF +#define STBI_NO_GIF +#endif +#ifndef STBI_ONLY_HDR +#define STBI_NO_HDR +#endif +#ifndef STBI_ONLY_PIC +#define STBI_NO_PIC +#endif +#ifndef STBI_ONLY_PNM +#define STBI_NO_PNM +#endif +#endif + +#if defined(STBI_NO_PNG) && !defined(STBI_SUPPORT_ZLIB) && !defined(STBI_NO_ZLIB) +#define STBI_NO_ZLIB +#endif + +#include +#include +#include // ptrdiff_t on osx +#include +#include + +#if !defined(STBI_NO_LINEAR) || !defined(STBI_NO_HDR) +#include // ldexp, pow +#endif + +#ifndef STBI_NO_STDIO +#include +#endif + +#ifndef STBI_ASSERT +#include +#define STBI_ASSERT(x) assert(x) +#endif + +#ifdef __cplusplus +#define STBI_EXTERN extern "C" +#else +#define STBI_EXTERN extern +#endif + +#ifndef _MSC_VER +#ifdef __cplusplus +#define stbi_inline inline +#else +#define stbi_inline +#endif +#else +#define stbi_inline __forceinline +#endif + +#ifndef STBI_NO_THREAD_LOCALS +#if defined(__cplusplus) && __cplusplus >= 201103L +#define STBI_THREAD_LOCAL thread_local +#elif defined(__GNUC__) && __GNUC__ < 5 +#define STBI_THREAD_LOCAL __thread +#elif defined(_MSC_VER) +#define STBI_THREAD_LOCAL __declspec(thread) +#elif defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201112L && !defined(__STDC_NO_THREADS__) +#define STBI_THREAD_LOCAL _Thread_local +#endif + +#ifndef STBI_THREAD_LOCAL +#if defined(__GNUC__) +#define STBI_THREAD_LOCAL __thread +#endif +#endif +#endif + +#if defined(_MSC_VER) || defined(__SYMBIAN32__) +typedef unsigned short stbi__uint16; +typedef signed short stbi__int16; +typedef unsigned int stbi__uint32; +typedef signed int stbi__int32; +#else +#include +typedef uint16_t stbi__uint16; +typedef int16_t stbi__int16; +typedef uint32_t stbi__uint32; +typedef int32_t stbi__int32; +#endif + +// should produce compiler error if size is wrong +typedef unsigned char validate_uint32[sizeof(stbi__uint32) == 4 ? 1 : -1]; + +#ifdef _MSC_VER +#define STBI_NOTUSED(v) (void)(v) +#else +#define STBI_NOTUSED(v) (void)sizeof(v) +#endif + +#ifdef _MSC_VER +#define STBI_HAS_LROTL +#endif + +#ifdef STBI_HAS_LROTL +#define stbi_lrot(x, y) _lrotl(x, y) +#else +#define stbi_lrot(x, y) (((x) << (y)) | ((x) >> (-(y) & 31))) +#endif + +#if defined(STBI_MALLOC) && defined(STBI_FREE) && \ + (defined(STBI_REALLOC) || defined(STBI_REALLOC_SIZED)) +// ok +#elif !defined(STBI_MALLOC) && !defined(STBI_FREE) && !defined(STBI_REALLOC) && \ + !defined(STBI_REALLOC_SIZED) +// ok +#else +#error \ + "Must define all or none of STBI_MALLOC, STBI_FREE, and STBI_REALLOC (or STBI_REALLOC_SIZED)." +#endif + +#ifndef STBI_MALLOC +#define STBI_MALLOC(sz) malloc(sz) +#define STBI_REALLOC(p, newsz) realloc(p, newsz) +#define STBI_FREE(p) free(p) +#endif + +#ifndef STBI_REALLOC_SIZED +#define STBI_REALLOC_SIZED(p, oldsz, newsz) STBI_REALLOC(p, newsz) +#endif + +// x86/x64 detection +#if defined(__x86_64__) || defined(_M_X64) +#define STBI__X64_TARGET +#elif defined(__i386) || defined(_M_IX86) +#define STBI__X86_TARGET +#endif + +#if defined(__GNUC__) && defined(STBI__X86_TARGET) && !defined(__SSE2__) && !defined(STBI_NO_SIMD) +// gcc doesn't support sse2 intrinsics unless you compile with -msse2, +// which in turn means it gets to use SSE2 everywhere. This is unfortunate, +// but previous attempts to provide the SSE2 functions with runtime +// detection caused numerous issues. The way architecture extensions are +// exposed in GCC/Clang is, sadly, not really suited for one-file libs. +// New behavior: if compiled with -msse2, we use SSE2 without any +// detection; if not, we don't use it at all. +#define STBI_NO_SIMD +#endif + +#if defined(__MINGW32__) && defined(STBI__X86_TARGET) && !defined(STBI_MINGW_ENABLE_SSE2) && \ + !defined(STBI_NO_SIMD) +// Note that __MINGW32__ doesn't actually mean 32-bit, so we have to avoid +// STBI__X64_TARGET +// +// 32-bit MinGW wants ESP to be 16-byte aligned, but this is not in the +// Windows ABI and VC++ as well as Windows DLLs don't maintain that invariant. +// As a result, enabling SSE2 on 32-bit MinGW is dangerous when not +// simultaneously enabling "-mstackrealign". +// +// See https://github.com/nothings/stb/issues/81 for more information. +// +// So default to no SSE2 on 32-bit MinGW. If you've read this far and added +// -mstackrealign to your build settings, feel free to #define +// STBI_MINGW_ENABLE_SSE2. +#define STBI_NO_SIMD +#endif + +#if !defined(STBI_NO_SIMD) && (defined(STBI__X86_TARGET) || defined(STBI__X64_TARGET)) +#define STBI_SSE2 +#include + +#ifdef _MSC_VER + +#if _MSC_VER >= 1400 // not VC6 +#include // __cpuid +static int stbi__cpuid3(void) { + int info[4]; + __cpuid(info, 1); + return info[3]; +} +#else +static int stbi__cpuid3(void) { + int res; + __asm { + mov eax,1 + cpuid + mov res,edx + } + return res; +} +#endif + +#define STBI_SIMD_ALIGN(type, name) __declspec(align(16)) type name + +#if !defined(STBI_NO_JPEG) && defined(STBI_SSE2) +static int stbi__sse2_available(void) { + int info3 = stbi__cpuid3(); + return ((info3 >> 26) & 1) != 0; +} +#endif + +#else // assume GCC-style if not VC++ +#define STBI_SIMD_ALIGN(type, name) type name __attribute__((aligned(16))) + +#if !defined(STBI_NO_JPEG) && defined(STBI_SSE2) +static int stbi__sse2_available(void) { + // If we're even attempting to compile this on GCC/Clang, that means + // -msse2 is on, which means the compiler is allowed to use SSE2 + // instructions at will, and so are we. + return 1; +} +#endif + +#endif +#endif + +// ARM NEON +#if defined(STBI_NO_SIMD) && defined(STBI_NEON) +#undef STBI_NEON +#endif + +#ifdef STBI_NEON +#include +#ifdef _MSC_VER +#define STBI_SIMD_ALIGN(type, name) __declspec(align(16)) type name +#else +#define STBI_SIMD_ALIGN(type, name) type name __attribute__((aligned(16))) +#endif +#endif + +#ifndef STBI_SIMD_ALIGN +#define STBI_SIMD_ALIGN(type, name) type name +#endif + +#ifndef STBI_MAX_DIMENSIONS +#define STBI_MAX_DIMENSIONS (1 << 24) +#endif + +/////////////////////////////////////////////// +// +// stbi__context struct and start_xxx functions + +// stbi__context structure is our basic context used by all images, so it +// contains all the IO context, plus some basic image information +typedef struct { + stbi__uint32 img_x, img_y; + int img_n, img_out_n; + + stbi_io_callbacks io; + void *io_user_data; + + int read_from_callbacks; + int buflen; + stbi_uc buffer_start[128]; + int callback_already_read; + + stbi_uc *img_buffer, *img_buffer_end; + stbi_uc *img_buffer_original, *img_buffer_original_end; +} stbi__context; + +static void stbi__refill_buffer(stbi__context *s); + +// initialize a memory-decode context +static void stbi__start_mem(stbi__context *s, stbi_uc const *buffer, int len) { + s->io.read = NULL; + s->read_from_callbacks = 0; + s->callback_already_read = 0; + s->img_buffer = s->img_buffer_original = (stbi_uc *)buffer; + s->img_buffer_end = s->img_buffer_original_end = (stbi_uc *)buffer + len; +} + +// initialize a callback-based context +static void stbi__start_callbacks(stbi__context *s, stbi_io_callbacks *c, void *user) { + s->io = *c; + s->io_user_data = user; + s->buflen = sizeof(s->buffer_start); + s->read_from_callbacks = 1; + s->callback_already_read = 0; + s->img_buffer = s->img_buffer_original = s->buffer_start; + stbi__refill_buffer(s); + s->img_buffer_original_end = s->img_buffer_end; +} + +#ifndef STBI_NO_STDIO + +static int stbi__stdio_read(void *user, char *data, int size) { + return (int)fread(data, 1, size, (FILE *)user); +} + +static void stbi__stdio_skip(void *user, int n) { + int ch; + fseek((FILE *)user, n, SEEK_CUR); + ch = fgetc((FILE *)user); /* have to read a byte to reset feof()'s flag */ + if (ch != EOF) { + ungetc(ch, (FILE *)user); /* push byte back onto stream if valid. */ + } +} + +static int stbi__stdio_eof(void *user) { return feof((FILE *)user) || ferror((FILE *)user); } + +static stbi_io_callbacks stbi__stdio_callbacks = { + stbi__stdio_read, + stbi__stdio_skip, + stbi__stdio_eof, +}; + +static void stbi__start_file(stbi__context *s, FILE *f) { + stbi__start_callbacks(s, &stbi__stdio_callbacks, (void *)f); +} + +// static void stop_file(stbi__context *s) { } + +#endif // !STBI_NO_STDIO + +static void stbi__rewind(stbi__context *s) { + // conceptually rewind SHOULD rewind to the beginning of the stream, + // but we just rewind to the beginning of the initial buffer, because + // we only use it after doing 'test', which only ever looks at at most 92 + // bytes + s->img_buffer = s->img_buffer_original; + s->img_buffer_end = s->img_buffer_original_end; +} + +enum { STBI_ORDER_RGB, STBI_ORDER_BGR }; + +typedef struct { + int bits_per_channel; + int num_channels; + int channel_order; +} stbi__result_info; + +#ifndef STBI_NO_JPEG +static int stbi__jpeg_test(stbi__context *s); +static void *stbi__jpeg_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, + stbi__result_info *ri); +static int stbi__jpeg_info(stbi__context *s, int *x, int *y, int *comp); +#endif + +#ifndef STBI_NO_PNG +static int stbi__png_test(stbi__context *s); +static void *stbi__png_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, + stbi__result_info *ri); +static int stbi__png_info(stbi__context *s, int *x, int *y, int *comp); +static int stbi__png_is16(stbi__context *s); +#endif + +#ifndef STBI_NO_BMP +static int stbi__bmp_test(stbi__context *s); +static void *stbi__bmp_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, + stbi__result_info *ri); +static int stbi__bmp_info(stbi__context *s, int *x, int *y, int *comp); +#endif + +#ifndef STBI_NO_TGA +static int stbi__tga_test(stbi__context *s); +static void *stbi__tga_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, + stbi__result_info *ri); +static int stbi__tga_info(stbi__context *s, int *x, int *y, int *comp); +#endif + +#ifndef STBI_NO_PSD +static int stbi__psd_test(stbi__context *s); +static void *stbi__psd_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, + stbi__result_info *ri, int bpc); +static int stbi__psd_info(stbi__context *s, int *x, int *y, int *comp); +static int stbi__psd_is16(stbi__context *s); +#endif + +#ifndef STBI_NO_HDR +static int stbi__hdr_test(stbi__context *s); +static float *stbi__hdr_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, + stbi__result_info *ri); +static int stbi__hdr_info(stbi__context *s, int *x, int *y, int *comp); +#endif + +#ifndef STBI_NO_PIC +static int stbi__pic_test(stbi__context *s); +static void *stbi__pic_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, + stbi__result_info *ri); +static int stbi__pic_info(stbi__context *s, int *x, int *y, int *comp); +#endif + +#ifndef STBI_NO_GIF +static int stbi__gif_test(stbi__context *s); +static void *stbi__gif_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, + stbi__result_info *ri); +static void *stbi__load_gif_main(stbi__context *s, int **delays, int *x, int *y, int *z, int *comp, + int req_comp); +static int stbi__gif_info(stbi__context *s, int *x, int *y, int *comp); +#endif + +#ifndef STBI_NO_PNM +static int stbi__pnm_test(stbi__context *s); +static void *stbi__pnm_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, + stbi__result_info *ri); +static int stbi__pnm_info(stbi__context *s, int *x, int *y, int *comp); +static int stbi__pnm_is16(stbi__context *s); +#endif + +static +#ifdef STBI_THREAD_LOCAL + STBI_THREAD_LOCAL +#endif + const char *stbi__g_failure_reason; + +STBIDEF const char *stbi_failure_reason(void) { return stbi__g_failure_reason; } + +#ifndef STBI_NO_FAILURE_STRINGS +static int stbi__err(const char *str) { + stbi__g_failure_reason = str; + return 0; +} +#endif + +static void *stbi__malloc(size_t size) { return STBI_MALLOC(size); } + +// stb_image uses ints pervasively, including for offset calculations. +// therefore the largest decoded image size we can support with the +// current code, even on 64-bit targets, is INT_MAX. this is not a +// significant limitation for the intended use case. +// +// we do, however, need to make sure our size calculations don't +// overflow. hence a few helper functions for size calculations that +// multiply integers together, making sure that they're non-negative +// and no overflow occurs. + +// return 1 if the sum is valid, 0 on overflow. +// negative terms are considered invalid. +static int stbi__addsizes_valid(int a, int b) { + if (b < 0) return 0; + // now 0 <= b <= INT_MAX, hence also + // 0 <= INT_MAX - b <= INTMAX. + // And "a + b <= INT_MAX" (which might overflow) is the + // same as a <= INT_MAX - b (no overflow) + return a <= INT_MAX - b; +} + +// returns 1 if the product is valid, 0 on overflow. +// negative factors are considered invalid. +static int stbi__mul2sizes_valid(int a, int b) { + if (a < 0 || b < 0) return 0; + if (b == 0) return 1; // mul-by-0 is always safe + // portable way to check for no overflows in a*b + return a <= INT_MAX / b; +} + +#if !defined(STBI_NO_JPEG) || !defined(STBI_NO_PNG) || !defined(STBI_NO_TGA) || \ + !defined(STBI_NO_HDR) +// returns 1 if "a*b + add" has no negative terms/factors and doesn't overflow +static int stbi__mad2sizes_valid(int a, int b, int add) { + return stbi__mul2sizes_valid(a, b) && stbi__addsizes_valid(a * b, add); +} +#endif + +// returns 1 if "a*b*c + add" has no negative terms/factors and doesn't overflow +static int stbi__mad3sizes_valid(int a, int b, int c, int add) { + return stbi__mul2sizes_valid(a, b) && stbi__mul2sizes_valid(a * b, c) && + stbi__addsizes_valid(a * b * c, add); +} + +// returns 1 if "a*b*c*d + add" has no negative terms/factors and doesn't +// overflow +#if !defined(STBI_NO_LINEAR) || !defined(STBI_NO_HDR) || !defined(STBI_NO_PNM) +static int stbi__mad4sizes_valid(int a, int b, int c, int d, int add) { + return stbi__mul2sizes_valid(a, b) && stbi__mul2sizes_valid(a * b, c) && + stbi__mul2sizes_valid(a * b * c, d) && stbi__addsizes_valid(a * b * c * d, add); +} +#endif + +#if !defined(STBI_NO_JPEG) || !defined(STBI_NO_PNG) || !defined(STBI_NO_TGA) || \ + !defined(STBI_NO_HDR) +// mallocs with size overflow checking +static void *stbi__malloc_mad2(int a, int b, int add) { + if (!stbi__mad2sizes_valid(a, b, add)) return NULL; + return stbi__malloc(a * b + add); +} +#endif + +static void *stbi__malloc_mad3(int a, int b, int c, int add) { + if (!stbi__mad3sizes_valid(a, b, c, add)) return NULL; + return stbi__malloc(a * b * c + add); +} + +#if !defined(STBI_NO_LINEAR) || !defined(STBI_NO_HDR) || !defined(STBI_NO_PNM) +static void *stbi__malloc_mad4(int a, int b, int c, int d, int add) { + if (!stbi__mad4sizes_valid(a, b, c, d, add)) return NULL; + return stbi__malloc(a * b * c * d + add); +} +#endif + +// returns 1 if the sum of two signed ints is valid (between -2^31 and 2^31-1 +// inclusive), 0 on overflow. +static int stbi__addints_valid(int a, int b) { + if ((a >= 0) != (b >= 0)) return 1; // a and b have different signs, so no overflow + if (a < 0 && b < 0) + return a >= INT_MIN - b; // same as a + b >= INT_MIN; INT_MIN - b cannot + // overflow since b < 0. + return a <= INT_MAX - b; +} + +// returns 1 if the product of two ints fits in a signed short, 0 on overflow. +static int stbi__mul2shorts_valid(int a, int b) { + if (b == 0 || b == -1) + return 1; // multiplication by 0 is always 0; check for -1 so SHRT_MIN/b + // doesn't overflow + if ((a >= 0) == (b >= 0)) + return a <= SHRT_MAX / b; // product is positive, so similar to mul2sizes_valid + if (b < 0) return a <= SHRT_MIN / b; // same as a * b >= SHRT_MIN + return a >= SHRT_MIN / b; +} + +// stbi__err - error +// stbi__errpf - error returning pointer to float +// stbi__errpuc - error returning pointer to unsigned char + +#ifdef STBI_NO_FAILURE_STRINGS +#define stbi__err(x, y) 0 +#elif defined(STBI_FAILURE_USERMSG) +#define stbi__err(x, y) stbi__err(y) +#else +#define stbi__err(x, y) stbi__err(x) +#endif + +#define stbi__errpf(x, y) ((float *)(size_t)(stbi__err(x, y) ? NULL : NULL)) +#define stbi__errpuc(x, y) ((unsigned char *)(size_t)(stbi__err(x, y) ? NULL : NULL)) + +STBIDEF void stbi_image_free(void *retval_from_stbi_load) { STBI_FREE(retval_from_stbi_load); } + +#ifndef STBI_NO_LINEAR +static float *stbi__ldr_to_hdr(stbi_uc *data, int x, int y, int comp); +#endif + +#ifndef STBI_NO_HDR +static stbi_uc *stbi__hdr_to_ldr(float *data, int x, int y, int comp); +#endif + +static int stbi__vertically_flip_on_load_global = 0; + +STBIDEF void stbi_set_flip_vertically_on_load(int flag_true_if_should_flip) { + stbi__vertically_flip_on_load_global = flag_true_if_should_flip; +} + +#ifndef STBI_THREAD_LOCAL +#define stbi__vertically_flip_on_load stbi__vertically_flip_on_load_global +#else +static STBI_THREAD_LOCAL int stbi__vertically_flip_on_load_local, stbi__vertically_flip_on_load_set; + +STBIDEF void stbi_set_flip_vertically_on_load_thread(int flag_true_if_should_flip) { + stbi__vertically_flip_on_load_local = flag_true_if_should_flip; + stbi__vertically_flip_on_load_set = 1; +} + +#define stbi__vertically_flip_on_load \ + (stbi__vertically_flip_on_load_set ? stbi__vertically_flip_on_load_local \ + : stbi__vertically_flip_on_load_global) +#endif // STBI_THREAD_LOCAL + +static void *stbi__load_main(stbi__context *s, int *x, int *y, int *comp, int req_comp, + stbi__result_info *ri, int bpc) { + memset(ri, 0, + sizeof(*ri)); // make sure it's initialized if we add new fields + ri->bits_per_channel = 8; // default is 8 so most paths don't have to be changed + ri->channel_order = STBI_ORDER_RGB; // all current input & output are this, but this is here + // so we can add BGR order + ri->num_channels = 0; + +// test the formats with a very explicit header first (at least a FOURCC +// or distinctive magic number first) +#ifndef STBI_NO_PNG + if (stbi__png_test(s)) return stbi__png_load(s, x, y, comp, req_comp, ri); +#endif +#ifndef STBI_NO_BMP + if (stbi__bmp_test(s)) return stbi__bmp_load(s, x, y, comp, req_comp, ri); +#endif +#ifndef STBI_NO_GIF + if (stbi__gif_test(s)) return stbi__gif_load(s, x, y, comp, req_comp, ri); +#endif +#ifndef STBI_NO_PSD + if (stbi__psd_test(s)) return stbi__psd_load(s, x, y, comp, req_comp, ri, bpc); +#else + STBI_NOTUSED(bpc); +#endif +#ifndef STBI_NO_PIC + if (stbi__pic_test(s)) return stbi__pic_load(s, x, y, comp, req_comp, ri); +#endif + +// then the formats that can end up attempting to load with just 1 or 2 +// bytes matching expectations; these are prone to false positives, so +// try them later +#ifndef STBI_NO_JPEG + if (stbi__jpeg_test(s)) return stbi__jpeg_load(s, x, y, comp, req_comp, ri); +#endif +#ifndef STBI_NO_PNM + if (stbi__pnm_test(s)) return stbi__pnm_load(s, x, y, comp, req_comp, ri); +#endif + +#ifndef STBI_NO_HDR + if (stbi__hdr_test(s)) { + float *hdr = stbi__hdr_load(s, x, y, comp, req_comp, ri); + return stbi__hdr_to_ldr(hdr, *x, *y, req_comp ? req_comp : *comp); + } +#endif + +#ifndef STBI_NO_TGA + // test tga last because it's a crappy test! + if (stbi__tga_test(s)) return stbi__tga_load(s, x, y, comp, req_comp, ri); +#endif + + return stbi__errpuc("unknown image type", "Image not of any known type, or corrupt"); +} + +static stbi_uc *stbi__convert_16_to_8(stbi__uint16 *orig, int w, int h, int channels) { + int i; + int img_len = w * h * channels; + stbi_uc *reduced; + + reduced = (stbi_uc *)stbi__malloc(img_len); + if (reduced == NULL) return stbi__errpuc("outofmem", "Out of memory"); + + for (i = 0; i < img_len; ++i) + reduced[i] = (stbi_uc)((orig[i] >> 8) & 0xFF); // top half of each byte is sufficient + // approx of 16->8 bit scaling + + STBI_FREE(orig); + return reduced; +} + +static stbi__uint16 *stbi__convert_8_to_16(stbi_uc *orig, int w, int h, int channels) { + int i; + int img_len = w * h * channels; + stbi__uint16 *enlarged; + + enlarged = (stbi__uint16 *)stbi__malloc(img_len * 2); + if (enlarged == NULL) return (stbi__uint16 *)stbi__errpuc("outofmem", "Out of memory"); + + for (i = 0; i < img_len; ++i) + enlarged[i] = (stbi__uint16)((orig[i] << 8) + orig[i]); // replicate to high and low + // byte, maps 0->0, 255->0xffff + + STBI_FREE(orig); + return enlarged; +} + +static void stbi__vertical_flip(void *image, int w, int h, int bytes_per_pixel) { + int row; + size_t bytes_per_row = (size_t)w * bytes_per_pixel; + stbi_uc temp[2048]; + stbi_uc *bytes = (stbi_uc *)image; + + for (row = 0; row < (h >> 1); row++) { + stbi_uc *row0 = bytes + row * bytes_per_row; + stbi_uc *row1 = bytes + (h - row - 1) * bytes_per_row; + // swap row0 with row1 + size_t bytes_left = bytes_per_row; + while (bytes_left) { + size_t bytes_copy = (bytes_left < sizeof(temp)) ? bytes_left : sizeof(temp); + memcpy(temp, row0, bytes_copy); + memcpy(row0, row1, bytes_copy); + memcpy(row1, temp, bytes_copy); + row0 += bytes_copy; + row1 += bytes_copy; + bytes_left -= bytes_copy; + } + } +} + +#ifndef STBI_NO_GIF +static void stbi__vertical_flip_slices(void *image, int w, int h, int z, int bytes_per_pixel) { + int slice; + int slice_size = w * h * bytes_per_pixel; + + stbi_uc *bytes = (stbi_uc *)image; + for (slice = 0; slice < z; ++slice) { + stbi__vertical_flip(bytes, w, h, bytes_per_pixel); + bytes += slice_size; + } +} +#endif + +static unsigned char *stbi__load_and_postprocess_8bit(stbi__context *s, int *x, int *y, int *comp, + int req_comp) { + stbi__result_info ri; + void *result = stbi__load_main(s, x, y, comp, req_comp, &ri, 8); + + if (result == NULL) return NULL; + + // it is the responsibility of the loaders to make sure we get either 8 or + // 16 bit. + STBI_ASSERT(ri.bits_per_channel == 8 || ri.bits_per_channel == 16); + + if (ri.bits_per_channel != 8) { + result = + stbi__convert_16_to_8((stbi__uint16 *)result, *x, *y, req_comp == 0 ? *comp : req_comp); + ri.bits_per_channel = 8; + } + + // @TODO: move stbi__convert_format to here + + if (stbi__vertically_flip_on_load) { + int channels = req_comp ? req_comp : *comp; + stbi__vertical_flip(result, *x, *y, channels * sizeof(stbi_uc)); + } + + return (unsigned char *)result; +} + +static stbi__uint16 *stbi__load_and_postprocess_16bit(stbi__context *s, int *x, int *y, int *comp, + int req_comp) { + stbi__result_info ri; + void *result = stbi__load_main(s, x, y, comp, req_comp, &ri, 16); + + if (result == NULL) return NULL; + + // it is the responsibility of the loaders to make sure we get either 8 or + // 16 bit. + STBI_ASSERT(ri.bits_per_channel == 8 || ri.bits_per_channel == 16); + + if (ri.bits_per_channel != 16) { + result = stbi__convert_8_to_16((stbi_uc *)result, *x, *y, req_comp == 0 ? *comp : req_comp); + ri.bits_per_channel = 16; + } + + // @TODO: move stbi__convert_format16 to here + // @TODO: special case RGB-to-Y (and RGBA-to-YA) for 8-bit-to-16-bit case to + // keep more precision + + if (stbi__vertically_flip_on_load) { + int channels = req_comp ? req_comp : *comp; + stbi__vertical_flip(result, *x, *y, channels * sizeof(stbi__uint16)); + } + + return (stbi__uint16 *)result; +} + +#if !defined(STBI_NO_HDR) && !defined(STBI_NO_LINEAR) +static void stbi__float_postprocess(float *result, int *x, int *y, int *comp, int req_comp) { + if (stbi__vertically_flip_on_load && result != NULL) { + int channels = req_comp ? req_comp : *comp; + stbi__vertical_flip(result, *x, *y, channels * sizeof(float)); + } +} +#endif + +#ifndef STBI_NO_STDIO + +#if defined(_WIN32) && defined(STBI_WINDOWS_UTF8) +STBI_EXTERN +__declspec(dllimport) int __stdcall MultiByteToWideChar(unsigned int cp, unsigned long flags, + const char *str, int cbmb, wchar_t *widestr, + int cchwide); +STBI_EXTERN +__declspec(dllimport) int __stdcall WideCharToMultiByte(unsigned int cp, unsigned long flags, + const wchar_t *widestr, int cchwide, + char *str, int cbmb, const char *defchar, + int *used_default); +#endif + +#if defined(_WIN32) && defined(STBI_WINDOWS_UTF8) +STBIDEF int stbi_convert_wchar_to_utf8(char *buffer, size_t bufferlen, const wchar_t *input) { + return WideCharToMultiByte(65001 /* UTF8 */, 0, input, -1, buffer, (int)bufferlen, NULL, NULL); +} +#endif + +static FILE *stbi__fopen(char const *filename, char const *mode) { + FILE *f; +#if defined(_WIN32) && defined(STBI_WINDOWS_UTF8) + wchar_t wMode[64]; + wchar_t wFilename[1024]; + if (0 == MultiByteToWideChar(65001 /* UTF8 */, 0, filename, -1, wFilename, + sizeof(wFilename) / sizeof(*wFilename))) + return 0; + + if (0 == + MultiByteToWideChar(65001 /* UTF8 */, 0, mode, -1, wMode, sizeof(wMode) / sizeof(*wMode))) + return 0; + +#if defined(_MSC_VER) && _MSC_VER >= 1400 + if (0 != _wfopen_s(&f, wFilename, wMode)) f = 0; +#else + f = _wfopen(wFilename, wMode); +#endif + +#elif defined(_MSC_VER) && _MSC_VER >= 1400 + if (0 != fopen_s(&f, filename, mode)) f = 0; +#else + f = fopen(filename, mode); +#endif + return f; +} + +STBIDEF stbi_uc *stbi_load(char const *filename, int *x, int *y, int *comp, int req_comp) { + FILE *f = stbi__fopen(filename, "rb"); + unsigned char *result; + if (!f) return stbi__errpuc("can't fopen", "Unable to open file"); + result = stbi_load_from_file(f, x, y, comp, req_comp); + fclose(f); + return result; +} + +STBIDEF stbi_uc *stbi_load_from_file(FILE *f, int *x, int *y, int *comp, int req_comp) { + unsigned char *result; + stbi__context s; + stbi__start_file(&s, f); + result = stbi__load_and_postprocess_8bit(&s, x, y, comp, req_comp); + if (result) { + // need to 'unget' all the characters in the IO buffer + fseek(f, -(int)(s.img_buffer_end - s.img_buffer), SEEK_CUR); + } + return result; +} + +STBIDEF stbi__uint16 *stbi_load_from_file_16(FILE *f, int *x, int *y, int *comp, int req_comp) { + stbi__uint16 *result; + stbi__context s; + stbi__start_file(&s, f); + result = stbi__load_and_postprocess_16bit(&s, x, y, comp, req_comp); + if (result) { + // need to 'unget' all the characters in the IO buffer + fseek(f, -(int)(s.img_buffer_end - s.img_buffer), SEEK_CUR); + } + return result; +} + +STBIDEF stbi_us *stbi_load_16(char const *filename, int *x, int *y, int *comp, int req_comp) { + FILE *f = stbi__fopen(filename, "rb"); + stbi__uint16 *result; + if (!f) return (stbi_us *)stbi__errpuc("can't fopen", "Unable to open file"); + result = stbi_load_from_file_16(f, x, y, comp, req_comp); + fclose(f); + return result; +} + +#endif //! STBI_NO_STDIO + +STBIDEF stbi_us *stbi_load_16_from_memory(stbi_uc const *buffer, int len, int *x, int *y, + int *channels_in_file, int desired_channels) { + stbi__context s; + stbi__start_mem(&s, buffer, len); + return stbi__load_and_postprocess_16bit(&s, x, y, channels_in_file, desired_channels); +} + +STBIDEF stbi_us *stbi_load_16_from_callbacks(stbi_io_callbacks const *clbk, void *user, int *x, + int *y, int *channels_in_file, int desired_channels) { + stbi__context s; + stbi__start_callbacks(&s, (stbi_io_callbacks *)clbk, user); + return stbi__load_and_postprocess_16bit(&s, x, y, channels_in_file, desired_channels); +} + +STBIDEF stbi_uc *stbi_load_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *comp, + int req_comp) { + stbi__context s; + stbi__start_mem(&s, buffer, len); + return stbi__load_and_postprocess_8bit(&s, x, y, comp, req_comp); +} + +STBIDEF stbi_uc *stbi_load_from_callbacks(stbi_io_callbacks const *clbk, void *user, int *x, int *y, + int *comp, int req_comp) { + stbi__context s; + stbi__start_callbacks(&s, (stbi_io_callbacks *)clbk, user); + return stbi__load_and_postprocess_8bit(&s, x, y, comp, req_comp); +} + +#ifndef STBI_NO_GIF +STBIDEF stbi_uc *stbi_load_gif_from_memory(stbi_uc const *buffer, int len, int **delays, int *x, + int *y, int *z, int *comp, int req_comp) { + unsigned char *result; + stbi__context s; + stbi__start_mem(&s, buffer, len); + + result = (unsigned char *)stbi__load_gif_main(&s, delays, x, y, z, comp, req_comp); + if (stbi__vertically_flip_on_load) { + stbi__vertical_flip_slices(result, *x, *y, *z, *comp); + } + + return result; +} +#endif + +#ifndef STBI_NO_LINEAR +static float *stbi__loadf_main(stbi__context *s, int *x, int *y, int *comp, int req_comp) { + unsigned char *data; +#ifndef STBI_NO_HDR + if (stbi__hdr_test(s)) { + stbi__result_info ri; + float *hdr_data = stbi__hdr_load(s, x, y, comp, req_comp, &ri); + if (hdr_data) stbi__float_postprocess(hdr_data, x, y, comp, req_comp); + return hdr_data; + } +#endif + data = stbi__load_and_postprocess_8bit(s, x, y, comp, req_comp); + if (data) return stbi__ldr_to_hdr(data, *x, *y, req_comp ? req_comp : *comp); + return stbi__errpf("unknown image type", "Image not of any known type, or corrupt"); +} + +STBIDEF float *stbi_loadf_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *comp, + int req_comp) { + stbi__context s; + stbi__start_mem(&s, buffer, len); + return stbi__loadf_main(&s, x, y, comp, req_comp); +} + +STBIDEF float *stbi_loadf_from_callbacks(stbi_io_callbacks const *clbk, void *user, int *x, int *y, + int *comp, int req_comp) { + stbi__context s; + stbi__start_callbacks(&s, (stbi_io_callbacks *)clbk, user); + return stbi__loadf_main(&s, x, y, comp, req_comp); +} + +#ifndef STBI_NO_STDIO +STBIDEF float *stbi_loadf(char const *filename, int *x, int *y, int *comp, int req_comp) { + float *result; + FILE *f = stbi__fopen(filename, "rb"); + if (!f) return stbi__errpf("can't fopen", "Unable to open file"); + result = stbi_loadf_from_file(f, x, y, comp, req_comp); + fclose(f); + return result; +} + +STBIDEF float *stbi_loadf_from_file(FILE *f, int *x, int *y, int *comp, int req_comp) { + stbi__context s; + stbi__start_file(&s, f); + return stbi__loadf_main(&s, x, y, comp, req_comp); +} +#endif // !STBI_NO_STDIO + +#endif // !STBI_NO_LINEAR + +// these is-hdr-or-not is defined independent of whether STBI_NO_LINEAR is +// defined, for API simplicity; if STBI_NO_LINEAR is defined, it always +// reports false! + +STBIDEF int stbi_is_hdr_from_memory(stbi_uc const *buffer, int len) { +#ifndef STBI_NO_HDR + stbi__context s; + stbi__start_mem(&s, buffer, len); + return stbi__hdr_test(&s); +#else + STBI_NOTUSED(buffer); + STBI_NOTUSED(len); + return 0; +#endif +} + +#ifndef STBI_NO_STDIO +STBIDEF int stbi_is_hdr(char const *filename) { + FILE *f = stbi__fopen(filename, "rb"); + int result = 0; + if (f) { + result = stbi_is_hdr_from_file(f); + fclose(f); + } + return result; +} + +STBIDEF int stbi_is_hdr_from_file(FILE *f) { +#ifndef STBI_NO_HDR + long pos = ftell(f); + int res; + stbi__context s; + stbi__start_file(&s, f); + res = stbi__hdr_test(&s); + fseek(f, pos, SEEK_SET); + return res; +#else + STBI_NOTUSED(f); + return 0; +#endif +} +#endif // !STBI_NO_STDIO + +STBIDEF int stbi_is_hdr_from_callbacks(stbi_io_callbacks const *clbk, void *user) { +#ifndef STBI_NO_HDR + stbi__context s; + stbi__start_callbacks(&s, (stbi_io_callbacks *)clbk, user); + return stbi__hdr_test(&s); +#else + STBI_NOTUSED(clbk); + STBI_NOTUSED(user); + return 0; +#endif +} + +#ifndef STBI_NO_LINEAR +static float stbi__l2h_gamma = 2.2f, stbi__l2h_scale = 1.0f; + +STBIDEF void stbi_ldr_to_hdr_gamma(float gamma) { stbi__l2h_gamma = gamma; } +STBIDEF void stbi_ldr_to_hdr_scale(float scale) { stbi__l2h_scale = scale; } +#endif + +static float stbi__h2l_gamma_i = 1.0f / 2.2f, stbi__h2l_scale_i = 1.0f; + +STBIDEF void stbi_hdr_to_ldr_gamma(float gamma) { stbi__h2l_gamma_i = 1 / gamma; } +STBIDEF void stbi_hdr_to_ldr_scale(float scale) { stbi__h2l_scale_i = 1 / scale; } + +////////////////////////////////////////////////////////////////////////////// +// +// Common code used by all image loaders +// + +enum { STBI__SCAN_load = 0, STBI__SCAN_type, STBI__SCAN_header }; + +static void stbi__refill_buffer(stbi__context *s) { + int n = (s->io.read)(s->io_user_data, (char *)s->buffer_start, s->buflen); + s->callback_already_read += (int)(s->img_buffer - s->img_buffer_original); + if (n == 0) { + // at end of file, treat same as if from memory, but need to handle case + // where s->img_buffer isn't pointing to safe memory, e.g. 0-byte file + s->read_from_callbacks = 0; + s->img_buffer = s->buffer_start; + s->img_buffer_end = s->buffer_start + 1; + *s->img_buffer = 0; + } else { + s->img_buffer = s->buffer_start; + s->img_buffer_end = s->buffer_start + n; + } +} + +stbi_inline static stbi_uc stbi__get8(stbi__context *s) { + if (s->img_buffer < s->img_buffer_end) return *s->img_buffer++; + if (s->read_from_callbacks) { + stbi__refill_buffer(s); + return *s->img_buffer++; + } + return 0; +} + +#if defined(STBI_NO_JPEG) && defined(STBI_NO_HDR) && defined(STBI_NO_PIC) && defined(STBI_NO_PNM) +// nothing +#else +stbi_inline static int stbi__at_eof(stbi__context *s) { + if (s->io.read) { + if (!(s->io.eof)(s->io_user_data)) return 0; + // if feof() is true, check if buffer = end + // special case: we've only got the special 0 character at the end + if (s->read_from_callbacks == 0) return 1; + } + + return s->img_buffer >= s->img_buffer_end; +} +#endif + +#if defined(STBI_NO_JPEG) && defined(STBI_NO_PNG) && defined(STBI_NO_BMP) && \ + defined(STBI_NO_PSD) && defined(STBI_NO_TGA) && defined(STBI_NO_GIF) && defined(STBI_NO_PIC) +// nothing +#else +static void stbi__skip(stbi__context *s, int n) { + if (n == 0) return; // already there! + if (n < 0) { + s->img_buffer = s->img_buffer_end; + return; + } + if (s->io.read) { + int blen = (int)(s->img_buffer_end - s->img_buffer); + if (blen < n) { + s->img_buffer = s->img_buffer_end; + (s->io.skip)(s->io_user_data, n - blen); + return; + } + } + s->img_buffer += n; +} +#endif + +#if defined(STBI_NO_PNG) && defined(STBI_NO_TGA) && defined(STBI_NO_HDR) && defined(STBI_NO_PNM) +// nothing +#else +static int stbi__getn(stbi__context *s, stbi_uc *buffer, int n) { + if (s->io.read) { + int blen = (int)(s->img_buffer_end - s->img_buffer); + if (blen < n) { + int res, count; + + memcpy(buffer, s->img_buffer, blen); + + count = (s->io.read)(s->io_user_data, (char *)buffer + blen, n - blen); + res = (count == (n - blen)); + s->img_buffer = s->img_buffer_end; + return res; + } + } + + if (s->img_buffer + n <= s->img_buffer_end) { + memcpy(buffer, s->img_buffer, n); + s->img_buffer += n; + return 1; + } else + return 0; +} +#endif + +#if defined(STBI_NO_JPEG) && defined(STBI_NO_PNG) && defined(STBI_NO_PSD) && defined(STBI_NO_PIC) +// nothing +#else +static int stbi__get16be(stbi__context *s) { + int z = stbi__get8(s); + return (z << 8) + stbi__get8(s); +} +#endif + +#if defined(STBI_NO_PNG) && defined(STBI_NO_PSD) && defined(STBI_NO_PIC) +// nothing +#else +static stbi__uint32 stbi__get32be(stbi__context *s) { + stbi__uint32 z = stbi__get16be(s); + return (z << 16) + stbi__get16be(s); +} +#endif + +#if defined(STBI_NO_BMP) && defined(STBI_NO_TGA) && defined(STBI_NO_GIF) +// nothing +#else +static int stbi__get16le(stbi__context *s) { + int z = stbi__get8(s); + return z + (stbi__get8(s) << 8); +} +#endif + +#ifndef STBI_NO_BMP +static stbi__uint32 stbi__get32le(stbi__context *s) { + stbi__uint32 z = stbi__get16le(s); + z += (stbi__uint32)stbi__get16le(s) << 16; + return z; +} +#endif + +#define STBI__BYTECAST(x) ((stbi_uc)((x) & 255)) // truncate int to byte without warnings + +#if defined(STBI_NO_JPEG) && defined(STBI_NO_PNG) && defined(STBI_NO_BMP) && \ + defined(STBI_NO_PSD) && defined(STBI_NO_TGA) && defined(STBI_NO_GIF) && \ + defined(STBI_NO_PIC) && defined(STBI_NO_PNM) +// nothing +#else +////////////////////////////////////////////////////////////////////////////// +// +// generic converter from built-in img_n to req_comp +// individual types do this automatically as much as possible (e.g. jpeg +// does all cases internally since it needs to colorspace convert anyway, +// and it never has alpha, so very few cases ). png can automatically +// interleave an alpha=255 channel, but falls back to this for other cases +// +// assume data buffer is malloced, so malloc a new one and free that one +// only failure mode is malloc failing + +static stbi_uc stbi__compute_y(int r, int g, int b) { + return (stbi_uc)(((r * 77) + (g * 150) + (29 * b)) >> 8); +} +#endif + +#if defined(STBI_NO_PNG) && defined(STBI_NO_BMP) && defined(STBI_NO_PSD) && \ + defined(STBI_NO_TGA) && defined(STBI_NO_GIF) && defined(STBI_NO_PIC) && defined(STBI_NO_PNM) +// nothing +#else +static unsigned char *stbi__convert_format(unsigned char *data, int img_n, int req_comp, + unsigned int x, unsigned int y) { + int i, j; + unsigned char *good; + + if (req_comp == img_n) return data; + STBI_ASSERT(req_comp >= 1 && req_comp <= 4); + + good = (unsigned char *)stbi__malloc_mad3(req_comp, x, y, 0); + if (good == NULL) { + STBI_FREE(data); + return stbi__errpuc("outofmem", "Out of memory"); + } + + for (j = 0; j < (int)y; ++j) { + unsigned char *src = data + j * x * img_n; + unsigned char *dest = good + j * x * req_comp; + +#define STBI__COMBO(a, b) ((a) * 8 + (b)) +#define STBI__CASE(a, b) \ + case STBI__COMBO(a, b): \ + for (i = x - 1; i >= 0; --i, src += a, dest += b) + // convert source image with img_n components to one with req_comp + // components; avoid switch per pixel, so use switch per scanline and + // massive macros + switch (STBI__COMBO(img_n, req_comp)) { + STBI__CASE(1, 2) { + dest[0] = src[0]; + dest[1] = 255; + } + break; + STBI__CASE(1, 3) { dest[0] = dest[1] = dest[2] = src[0]; } + break; + STBI__CASE(1, 4) { + dest[0] = dest[1] = dest[2] = src[0]; + dest[3] = 255; + } + break; + STBI__CASE(2, 1) { dest[0] = src[0]; } + break; + STBI__CASE(2, 3) { dest[0] = dest[1] = dest[2] = src[0]; } + break; + STBI__CASE(2, 4) { + dest[0] = dest[1] = dest[2] = src[0]; + dest[3] = src[1]; + } + break; + STBI__CASE(3, 4) { + dest[0] = src[0]; + dest[1] = src[1]; + dest[2] = src[2]; + dest[3] = 255; + } + break; + STBI__CASE(3, 1) { dest[0] = stbi__compute_y(src[0], src[1], src[2]); } + break; + STBI__CASE(3, 2) { + dest[0] = stbi__compute_y(src[0], src[1], src[2]); + dest[1] = 255; + } + break; + STBI__CASE(4, 1) { dest[0] = stbi__compute_y(src[0], src[1], src[2]); } + break; + STBI__CASE(4, 2) { + dest[0] = stbi__compute_y(src[0], src[1], src[2]); + dest[1] = src[3]; + } + break; + STBI__CASE(4, 3) { + dest[0] = src[0]; + dest[1] = src[1]; + dest[2] = src[2]; + } + break; + default: + STBI_ASSERT(0); + STBI_FREE(data); + STBI_FREE(good); + return stbi__errpuc("unsupported", "Unsupported format conversion"); + } +#undef STBI__CASE + } + + STBI_FREE(data); + return good; +} +#endif + +#if defined(STBI_NO_PNG) && defined(STBI_NO_PSD) +// nothing +#else +static stbi__uint16 stbi__compute_y_16(int r, int g, int b) { + return (stbi__uint16)(((r * 77) + (g * 150) + (29 * b)) >> 8); +} +#endif + +#if defined(STBI_NO_PNG) && defined(STBI_NO_PSD) +// nothing +#else +static stbi__uint16 *stbi__convert_format16(stbi__uint16 *data, int img_n, int req_comp, + unsigned int x, unsigned int y) { + int i, j; + stbi__uint16 *good; + + if (req_comp == img_n) return data; + STBI_ASSERT(req_comp >= 1 && req_comp <= 4); + + good = (stbi__uint16 *)stbi__malloc(req_comp * x * y * 2); + if (good == NULL) { + STBI_FREE(data); + return (stbi__uint16 *)stbi__errpuc("outofmem", "Out of memory"); + } + + for (j = 0; j < (int)y; ++j) { + stbi__uint16 *src = data + j * x * img_n; + stbi__uint16 *dest = good + j * x * req_comp; + +#define STBI__COMBO(a, b) ((a) * 8 + (b)) +#define STBI__CASE(a, b) \ + case STBI__COMBO(a, b): \ + for (i = x - 1; i >= 0; --i, src += a, dest += b) + // convert source image with img_n components to one with req_comp + // components; avoid switch per pixel, so use switch per scanline and + // massive macros + switch (STBI__COMBO(img_n, req_comp)) { + STBI__CASE(1, 2) { + dest[0] = src[0]; + dest[1] = 0xffff; + } + break; + STBI__CASE(1, 3) { dest[0] = dest[1] = dest[2] = src[0]; } + break; + STBI__CASE(1, 4) { + dest[0] = dest[1] = dest[2] = src[0]; + dest[3] = 0xffff; + } + break; + STBI__CASE(2, 1) { dest[0] = src[0]; } + break; + STBI__CASE(2, 3) { dest[0] = dest[1] = dest[2] = src[0]; } + break; + STBI__CASE(2, 4) { + dest[0] = dest[1] = dest[2] = src[0]; + dest[3] = src[1]; + } + break; + STBI__CASE(3, 4) { + dest[0] = src[0]; + dest[1] = src[1]; + dest[2] = src[2]; + dest[3] = 0xffff; + } + break; + STBI__CASE(3, 1) { dest[0] = stbi__compute_y_16(src[0], src[1], src[2]); } + break; + STBI__CASE(3, 2) { + dest[0] = stbi__compute_y_16(src[0], src[1], src[2]); + dest[1] = 0xffff; + } + break; + STBI__CASE(4, 1) { dest[0] = stbi__compute_y_16(src[0], src[1], src[2]); } + break; + STBI__CASE(4, 2) { + dest[0] = stbi__compute_y_16(src[0], src[1], src[2]); + dest[1] = src[3]; + } + break; + STBI__CASE(4, 3) { + dest[0] = src[0]; + dest[1] = src[1]; + dest[2] = src[2]; + } + break; + default: + STBI_ASSERT(0); + STBI_FREE(data); + STBI_FREE(good); + return (stbi__uint16 *)stbi__errpuc("unsupported", "Unsupported format conversion"); + } +#undef STBI__CASE + } + + STBI_FREE(data); + return good; +} +#endif + +#ifndef STBI_NO_LINEAR +static float *stbi__ldr_to_hdr(stbi_uc *data, int x, int y, int comp) { + int i, k, n; + float *output; + if (!data) return NULL; + output = (float *)stbi__malloc_mad4(x, y, comp, sizeof(float), 0); + if (output == NULL) { + STBI_FREE(data); + return stbi__errpf("outofmem", "Out of memory"); + } + // compute number of non-alpha components + if (comp & 1) + n = comp; + else + n = comp - 1; + for (i = 0; i < x * y; ++i) { + for (k = 0; k < n; ++k) { + output[i * comp + k] = + (float)(pow(data[i * comp + k] / 255.0f, stbi__l2h_gamma) * stbi__l2h_scale); + } + } + if (n < comp) { + for (i = 0; i < x * y; ++i) { + output[i * comp + n] = data[i * comp + n] / 255.0f; + } + } + STBI_FREE(data); + return output; +} +#endif + +#ifndef STBI_NO_HDR +#define stbi__float2int(x) ((int)(x)) +static stbi_uc *stbi__hdr_to_ldr(float *data, int x, int y, int comp) { + int i, k, n; + stbi_uc *output; + if (!data) return NULL; + output = (stbi_uc *)stbi__malloc_mad3(x, y, comp, 0); + if (output == NULL) { + STBI_FREE(data); + return stbi__errpuc("outofmem", "Out of memory"); + } + // compute number of non-alpha components + if (comp & 1) + n = comp; + else + n = comp - 1; + for (i = 0; i < x * y; ++i) { + for (k = 0; k < n; ++k) { + float z = + (float)pow(data[i * comp + k] * stbi__h2l_scale_i, stbi__h2l_gamma_i) * 255 + 0.5f; + if (z < 0) z = 0; + if (z > 255) z = 255; + output[i * comp + k] = (stbi_uc)stbi__float2int(z); + } + if (k < comp) { + float z = data[i * comp + k] * 255 + 0.5f; + if (z < 0) z = 0; + if (z > 255) z = 255; + output[i * comp + k] = (stbi_uc)stbi__float2int(z); + } + } + STBI_FREE(data); + return output; +} +#endif + +////////////////////////////////////////////////////////////////////////////// +// +// "baseline" JPEG/JFIF decoder +// +// simple implementation +// - doesn't support delayed output of y-dimension +// - simple interface (only one output format: 8-bit interleaved RGB) +// - doesn't try to recover corrupt jpegs +// - doesn't allow partial loading, loading multiple at once +// - still fast on x86 (copying globals into locals doesn't help x86) +// - allocates lots of intermediate memory (full size of all components) +// - non-interleaved case requires this anyway +// - allows good upsampling (see next) +// high-quality +// - upsampled channels are bilinearly interpolated, even across blocks +// - quality integer IDCT derived from IJG's 'slow' +// performance +// - fast huffman; reasonable integer IDCT +// - some SIMD kernels for common paths on targets with SSE2/NEON +// - uses a lot of intermediate memory, could cache poorly + +#ifndef STBI_NO_JPEG + +// huffman decoding acceleration +#define FAST_BITS 9 // larger handles more cases; smaller stomps less cache + +typedef struct { + stbi_uc fast[1 << FAST_BITS]; + // weirdly, repacking this into AoS is a 10% speed loss, instead of a win + stbi__uint16 code[256]; + stbi_uc values[256]; + stbi_uc size[257]; + unsigned int maxcode[18]; + int delta[17]; // old 'firstsymbol' - old 'firstcode' +} stbi__huffman; + +typedef struct { + stbi__context *s; + stbi__huffman huff_dc[4]; + stbi__huffman huff_ac[4]; + stbi__uint16 dequant[4][64]; + stbi__int16 fast_ac[4][1 << FAST_BITS]; + + // sizes for components, interleaved MCUs + int img_h_max, img_v_max; + int img_mcu_x, img_mcu_y; + int img_mcu_w, img_mcu_h; + + // definition of jpeg image component + struct { + int id; + int h, v; + int tq; + int hd, ha; + int dc_pred; + + int x, y, w2, h2; + stbi_uc *data; + void *raw_data, *raw_coeff; + stbi_uc *linebuf; + short *coeff; // progressive only + int coeff_w, coeff_h; // number of 8x8 coefficient blocks + } img_comp[4]; + + stbi__uint32 code_buffer; // jpeg entropy-coded buffer + int code_bits; // number of valid bits + unsigned char marker; // marker seen while filling entropy buffer + int nomore; // flag if we saw a marker so must stop + + int progressive; + int spec_start; + int spec_end; + int succ_high; + int succ_low; + int eob_run; + int jfif; + int app14_color_transform; // Adobe APP14 tag + int rgb; + + int scan_n, order[4]; + int restart_interval, todo; + + // kernels + void (*idct_block_kernel)(stbi_uc *out, int out_stride, short data[64]); + void (*YCbCr_to_RGB_kernel)(stbi_uc *out, const stbi_uc *y, const stbi_uc *pcb, + const stbi_uc *pcr, int count, int step); + stbi_uc *(*resample_row_hv_2_kernel)(stbi_uc *out, stbi_uc *in_near, stbi_uc *in_far, int w, + int hs); +} stbi__jpeg; + +static int stbi__build_huffman(stbi__huffman *h, int *count) { + int i, j, k = 0; + unsigned int code; + // build size list for each symbol (from JPEG spec) + for (i = 0; i < 16; ++i) { + for (j = 0; j < count[i]; ++j) { + h->size[k++] = (stbi_uc)(i + 1); + if (k >= 257) return stbi__err("bad size list", "Corrupt JPEG"); + } + } + h->size[k] = 0; + + // compute actual symbols (from jpeg spec) + code = 0; + k = 0; + for (j = 1; j <= 16; ++j) { + // compute delta to add to code to compute symbol id + h->delta[j] = k - code; + if (h->size[k] == j) { + while (h->size[k] == j) h->code[k++] = (stbi__uint16)(code++); + if (code - 1 >= (1u << j)) return stbi__err("bad code lengths", "Corrupt JPEG"); + } + // compute largest code + 1 for this size, preshifted as needed later + h->maxcode[j] = code << (16 - j); + code <<= 1; + } + h->maxcode[j] = 0xffffffff; + + // build non-spec acceleration table; 255 is flag for not-accelerated + memset(h->fast, 255, 1 << FAST_BITS); + for (i = 0; i < k; ++i) { + int s = h->size[i]; + if (s <= FAST_BITS) { + int c = h->code[i] << (FAST_BITS - s); + int m = 1 << (FAST_BITS - s); + for (j = 0; j < m; ++j) { + h->fast[c + j] = (stbi_uc)i; + } + } + } + return 1; +} + +// build a table that decodes both magnitude and value of small ACs in +// one go. +static void stbi__build_fast_ac(stbi__int16 *fast_ac, stbi__huffman *h) { + int i; + for (i = 0; i < (1 << FAST_BITS); ++i) { + stbi_uc fast = h->fast[i]; + fast_ac[i] = 0; + if (fast < 255) { + int rs = h->values[fast]; + int run = (rs >> 4) & 15; + int magbits = rs & 15; + int len = h->size[fast]; + + if (magbits && len + magbits <= FAST_BITS) { + // magnitude code followed by receive_extend code + int k = ((i << len) & ((1 << FAST_BITS) - 1)) >> (FAST_BITS - magbits); + int m = 1 << (magbits - 1); + if (k < m) k += (~0U << magbits) + 1; + // if the result is small enough, we can fit it in fast_ac table + if (k >= -128 && k <= 127) + fast_ac[i] = (stbi__int16)((k * 256) + (run * 16) + (len + magbits)); + } + } + } +} + +static void stbi__grow_buffer_unsafe(stbi__jpeg *j) { + do { + unsigned int b = j->nomore ? 0 : stbi__get8(j->s); + if (b == 0xff) { + int c = stbi__get8(j->s); + while (c == 0xff) c = stbi__get8(j->s); // consume fill bytes + if (c != 0) { + j->marker = (unsigned char)c; + j->nomore = 1; + return; + } + } + j->code_buffer |= b << (24 - j->code_bits); + j->code_bits += 8; + } while (j->code_bits <= 24); +} + +// (1 << n) - 1 +static const stbi__uint32 stbi__bmask[17] = {0, 1, 3, 7, 15, 31, 63, 127, 255, + 511, 1023, 2047, 4095, 8191, 16383, 32767, 65535}; + +// decode a jpeg huffman value from the bitstream +stbi_inline static int stbi__jpeg_huff_decode(stbi__jpeg *j, stbi__huffman *h) { + unsigned int temp; + int c, k; + + if (j->code_bits < 16) stbi__grow_buffer_unsafe(j); + + // look at the top FAST_BITS and determine what symbol ID it is, + // if the code is <= FAST_BITS + c = (j->code_buffer >> (32 - FAST_BITS)) & ((1 << FAST_BITS) - 1); + k = h->fast[c]; + if (k < 255) { + int s = h->size[k]; + if (s > j->code_bits) return -1; + j->code_buffer <<= s; + j->code_bits -= s; + return h->values[k]; + } + + // naive test is to shift the code_buffer down so k bits are + // valid, then test against maxcode. To speed this up, we've + // preshifted maxcode left so that it has (16-k) 0s at the + // end; in other words, regardless of the number of bits, it + // wants to be compared against something shifted to have 16; + // that way we don't need to shift inside the loop. + temp = j->code_buffer >> 16; + for (k = FAST_BITS + 1;; ++k) + if (temp < h->maxcode[k]) break; + if (k == 17) { + // error! code not found + j->code_bits -= 16; + return -1; + } + + if (k > j->code_bits) return -1; + + // convert the huffman code to the symbol id + c = ((j->code_buffer >> (32 - k)) & stbi__bmask[k]) + h->delta[k]; + if (c < 0 || c >= 256) // symbol id out of bounds! + return -1; + STBI_ASSERT((((j->code_buffer) >> (32 - h->size[c])) & stbi__bmask[h->size[c]]) == h->code[c]); + + // convert the id to a symbol + j->code_bits -= k; + j->code_buffer <<= k; + return h->values[c]; +} + +// bias[n] = (-1<code_bits < n) stbi__grow_buffer_unsafe(j); + if (j->code_bits < n) return 0; // ran out of bits from stream, return 0s intead of continuing + + sgn = j->code_buffer >> 31; // sign bit always in MSB; 0 if MSB clear + // (positive), 1 if MSB set (negative) + k = stbi_lrot(j->code_buffer, n); + j->code_buffer = k & ~stbi__bmask[n]; + k &= stbi__bmask[n]; + j->code_bits -= n; + return k + (stbi__jbias[n] & (sgn - 1)); +} + +// get some unsigned bits +stbi_inline static int stbi__jpeg_get_bits(stbi__jpeg *j, int n) { + unsigned int k; + if (j->code_bits < n) stbi__grow_buffer_unsafe(j); + if (j->code_bits < n) return 0; // ran out of bits from stream, return 0s intead of continuing + k = stbi_lrot(j->code_buffer, n); + j->code_buffer = k & ~stbi__bmask[n]; + k &= stbi__bmask[n]; + j->code_bits -= n; + return k; +} + +stbi_inline static int stbi__jpeg_get_bit(stbi__jpeg *j) { + unsigned int k; + if (j->code_bits < 1) stbi__grow_buffer_unsafe(j); + if (j->code_bits < 1) return 0; // ran out of bits from stream, return 0s intead of continuing + k = j->code_buffer; + j->code_buffer <<= 1; + --j->code_bits; + return k & 0x80000000; +} + +// given a value that's at position X in the zigzag stream, +// where does it appear in the 8x8 matrix coded as row-major? +static const stbi_uc stbi__jpeg_dezigzag[64 + 15] = { + 0, 1, 8, 16, 9, 2, 3, 10, 17, 24, 32, 25, 18, 11, 4, 5, 12, 19, 26, 33, 40, 48, 41, 34, 27, 20, + 13, 6, 7, 14, 21, 28, 35, 42, 49, 56, 57, 50, 43, 36, 29, 22, 15, 23, 30, 37, 44, 51, 58, 59, + 52, 45, 38, 31, 39, 46, 53, 60, 61, 54, 47, 55, 62, 63, + // let corrupt input sample past end + 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63}; + +// decode one 64-entry block-- +static int stbi__jpeg_decode_block(stbi__jpeg *j, short data[64], stbi__huffman *hdc, + stbi__huffman *hac, stbi__int16 *fac, int b, + stbi__uint16 *dequant) { + int diff, dc, k; + int t; + + if (j->code_bits < 16) stbi__grow_buffer_unsafe(j); + t = stbi__jpeg_huff_decode(j, hdc); + if (t < 0 || t > 15) return stbi__err("bad huffman code", "Corrupt JPEG"); + + // 0 all the ac values now so we can do it 32-bits at a time + memset(data, 0, 64 * sizeof(data[0])); + + diff = t ? stbi__extend_receive(j, t) : 0; + if (!stbi__addints_valid(j->img_comp[b].dc_pred, diff)) + return stbi__err("bad delta", "Corrupt JPEG"); + dc = j->img_comp[b].dc_pred + diff; + j->img_comp[b].dc_pred = dc; + if (!stbi__mul2shorts_valid(dc, dequant[0])) + return stbi__err("can't merge dc and ac", "Corrupt JPEG"); + data[0] = (short)(dc * dequant[0]); + + // decode AC components, see JPEG spec + k = 1; + do { + unsigned int zig; + int c, r, s; + if (j->code_bits < 16) stbi__grow_buffer_unsafe(j); + c = (j->code_buffer >> (32 - FAST_BITS)) & ((1 << FAST_BITS) - 1); + r = fac[c]; + if (r) { // fast-AC path + k += (r >> 4) & 15; // run + s = r & 15; // combined length + if (s > j->code_bits) + return stbi__err("bad huffman code", + "Combined length longer than code bits available"); + j->code_buffer <<= s; + j->code_bits -= s; + // decode into unzigzag'd location + zig = stbi__jpeg_dezigzag[k++]; + data[zig] = (short)((r >> 8) * dequant[zig]); + } else { + int rs = stbi__jpeg_huff_decode(j, hac); + if (rs < 0) return stbi__err("bad huffman code", "Corrupt JPEG"); + s = rs & 15; + r = rs >> 4; + if (s == 0) { + if (rs != 0xf0) break; // end block + k += 16; + } else { + k += r; + // decode into unzigzag'd location + zig = stbi__jpeg_dezigzag[k++]; + data[zig] = (short)(stbi__extend_receive(j, s) * dequant[zig]); + } + } + } while (k < 64); + return 1; +} + +static int stbi__jpeg_decode_block_prog_dc(stbi__jpeg *j, short data[64], stbi__huffman *hdc, + int b) { + int diff, dc; + int t; + if (j->spec_end != 0) return stbi__err("can't merge dc and ac", "Corrupt JPEG"); + + if (j->code_bits < 16) stbi__grow_buffer_unsafe(j); + + if (j->succ_high == 0) { + // first scan for DC coefficient, must be first + memset(data, 0, 64 * sizeof(data[0])); // 0 all the ac values now + t = stbi__jpeg_huff_decode(j, hdc); + if (t < 0 || t > 15) return stbi__err("can't merge dc and ac", "Corrupt JPEG"); + diff = t ? stbi__extend_receive(j, t) : 0; + + if (!stbi__addints_valid(j->img_comp[b].dc_pred, diff)) + return stbi__err("bad delta", "Corrupt JPEG"); + dc = j->img_comp[b].dc_pred + diff; + j->img_comp[b].dc_pred = dc; + if (!stbi__mul2shorts_valid(dc, 1 << j->succ_low)) + return stbi__err("can't merge dc and ac", "Corrupt JPEG"); + data[0] = (short)(dc * (1 << j->succ_low)); + } else { + // refinement scan for DC coefficient + if (stbi__jpeg_get_bit(j)) data[0] += (short)(1 << j->succ_low); + } + return 1; +} + +// @OPTIMIZE: store non-zigzagged during the decode passes, +// and only de-zigzag when dequantizing +static int stbi__jpeg_decode_block_prog_ac(stbi__jpeg *j, short data[64], stbi__huffman *hac, + stbi__int16 *fac) { + int k; + if (j->spec_start == 0) return stbi__err("can't merge dc and ac", "Corrupt JPEG"); + + if (j->succ_high == 0) { + int shift = j->succ_low; + + if (j->eob_run) { + --j->eob_run; + return 1; + } + + k = j->spec_start; + do { + unsigned int zig; + int c, r, s; + if (j->code_bits < 16) stbi__grow_buffer_unsafe(j); + c = (j->code_buffer >> (32 - FAST_BITS)) & ((1 << FAST_BITS) - 1); + r = fac[c]; + if (r) { // fast-AC path + k += (r >> 4) & 15; // run + s = r & 15; // combined length + if (s > j->code_bits) + return stbi__err("bad huffman code", + "Combined length longer than code bits available"); + j->code_buffer <<= s; + j->code_bits -= s; + zig = stbi__jpeg_dezigzag[k++]; + data[zig] = (short)((r >> 8) * (1 << shift)); + } else { + int rs = stbi__jpeg_huff_decode(j, hac); + if (rs < 0) return stbi__err("bad huffman code", "Corrupt JPEG"); + s = rs & 15; + r = rs >> 4; + if (s == 0) { + if (r < 15) { + j->eob_run = (1 << r); + if (r) j->eob_run += stbi__jpeg_get_bits(j, r); + --j->eob_run; + break; + } + k += 16; + } else { + k += r; + zig = stbi__jpeg_dezigzag[k++]; + data[zig] = (short)(stbi__extend_receive(j, s) * (1 << shift)); + } + } + } while (k <= j->spec_end); + } else { + // refinement scan for these AC coefficients + + short bit = (short)(1 << j->succ_low); + + if (j->eob_run) { + --j->eob_run; + for (k = j->spec_start; k <= j->spec_end; ++k) { + short *p = &data[stbi__jpeg_dezigzag[k]]; + if (*p != 0) + if (stbi__jpeg_get_bit(j)) + if ((*p & bit) == 0) { + if (*p > 0) + *p += bit; + else + *p -= bit; + } + } + } else { + k = j->spec_start; + do { + int r, s; + int rs = stbi__jpeg_huff_decode(j, hac); // @OPTIMIZE see if we can use the fast + // path here, advance-by-r is so slow, eh + if (rs < 0) return stbi__err("bad huffman code", "Corrupt JPEG"); + s = rs & 15; + r = rs >> 4; + if (s == 0) { + if (r < 15) { + j->eob_run = (1 << r) - 1; + if (r) j->eob_run += stbi__jpeg_get_bits(j, r); + r = 64; // force end of block + } else { + // r=15 s=0 should write 16 0s, so we just do + // a run of 15 0s and then write s (which is 0), + // so we don't have to do anything special here + } + } else { + if (s != 1) return stbi__err("bad huffman code", "Corrupt JPEG"); + // sign bit + if (stbi__jpeg_get_bit(j)) + s = bit; + else + s = -bit; + } + + // advance by r + while (k <= j->spec_end) { + short *p = &data[stbi__jpeg_dezigzag[k++]]; + if (*p != 0) { + if (stbi__jpeg_get_bit(j)) + if ((*p & bit) == 0) { + if (*p > 0) + *p += bit; + else + *p -= bit; + } + } else { + if (r == 0) { + *p = (short)s; + break; + } + --r; + } + } + } while (k <= j->spec_end); + } + } + return 1; +} + +// take a -128..127 value and stbi__clamp it and convert to 0..255 +stbi_inline static stbi_uc stbi__clamp(int x) { + // trick to use a single test to catch both cases + if ((unsigned int)x > 255) { + if (x < 0) return 0; + if (x > 255) return 255; + } + return (stbi_uc)x; +} + +#define stbi__f2f(x) ((int)(((x) * 4096 + 0.5))) +#define stbi__fsh(x) ((x) * 4096) + +// derived from jidctint -- DCT_ISLOW +#define STBI__IDCT_1D(s0, s1, s2, s3, s4, s5, s6, s7) \ + int t0, t1, t2, t3, p1, p2, p3, p4, p5, x0, x1, x2, x3; \ + p2 = s2; \ + p3 = s6; \ + p1 = (p2 + p3) * stbi__f2f(0.5411961f); \ + t2 = p1 + p3 * stbi__f2f(-1.847759065f); \ + t3 = p1 + p2 * stbi__f2f(0.765366865f); \ + p2 = s0; \ + p3 = s4; \ + t0 = stbi__fsh(p2 + p3); \ + t1 = stbi__fsh(p2 - p3); \ + x0 = t0 + t3; \ + x3 = t0 - t3; \ + x1 = t1 + t2; \ + x2 = t1 - t2; \ + t0 = s7; \ + t1 = s5; \ + t2 = s3; \ + t3 = s1; \ + p3 = t0 + t2; \ + p4 = t1 + t3; \ + p1 = t0 + t3; \ + p2 = t1 + t2; \ + p5 = (p3 + p4) * stbi__f2f(1.175875602f); \ + t0 = t0 * stbi__f2f(0.298631336f); \ + t1 = t1 * stbi__f2f(2.053119869f); \ + t2 = t2 * stbi__f2f(3.072711026f); \ + t3 = t3 * stbi__f2f(1.501321110f); \ + p1 = p5 + p1 * stbi__f2f(-0.899976223f); \ + p2 = p5 + p2 * stbi__f2f(-2.562915447f); \ + p3 = p3 * stbi__f2f(-1.961570560f); \ + p4 = p4 * stbi__f2f(-0.390180644f); \ + t3 += p1 + p4; \ + t2 += p2 + p3; \ + t1 += p2 + p4; \ + t0 += p1 + p3; + +static void stbi__idct_block(stbi_uc *out, int out_stride, short data[64]) { + int i, val[64], *v = val; + stbi_uc *o; + short *d = data; + + // columns + for (i = 0; i < 8; ++i, ++d, ++v) { + // if all zeroes, shortcut -- this avoids dequantizing 0s and IDCTing + if (d[8] == 0 && d[16] == 0 && d[24] == 0 && d[32] == 0 && d[40] == 0 && d[48] == 0 && + d[56] == 0) { + // no shortcut 0 seconds + // (1|2|3|4|5|6|7)==0 0 seconds + // all separate -0.047 seconds + // 1 && 2|3 && 4|5 && 6|7: -0.047 seconds + int dcterm = d[0] * 4; + v[0] = v[8] = v[16] = v[24] = v[32] = v[40] = v[48] = v[56] = dcterm; + } else { + STBI__IDCT_1D(d[0], d[8], d[16], d[24], d[32], d[40], d[48], d[56]) + // constants scaled things up by 1<<12; let's bring them back + // down, but keep 2 extra bits of precision + x0 += 512; + x1 += 512; + x2 += 512; + x3 += 512; + v[0] = (x0 + t3) >> 10; + v[56] = (x0 - t3) >> 10; + v[8] = (x1 + t2) >> 10; + v[48] = (x1 - t2) >> 10; + v[16] = (x2 + t1) >> 10; + v[40] = (x2 - t1) >> 10; + v[24] = (x3 + t0) >> 10; + v[32] = (x3 - t0) >> 10; + } + } + + for (i = 0, v = val, o = out; i < 8; ++i, v += 8, o += out_stride) { + // no fast case since the first 1D IDCT spread components out + STBI__IDCT_1D(v[0], v[1], v[2], v[3], v[4], v[5], v[6], v[7]) + // constants scaled things up by 1<<12, plus we had 1<<2 from first + // loop, plus horizontal and vertical each scale by sqrt(8) so together + // we've got an extra 1<<3, so 1<<17 total we need to remove. + // so we want to round that, which means adding 0.5 * 1<<17, + // aka 65536. Also, we'll end up with -128 to 127 that we want + // to encode as 0..255 by adding 128, so we'll add that before the shift + x0 += 65536 + (128 << 17); + x1 += 65536 + (128 << 17); + x2 += 65536 + (128 << 17); + x3 += 65536 + (128 << 17); + // tried computing the shifts into temps, or'ing the temps to see + // if any were out of range, but that was slower + o[0] = stbi__clamp((x0 + t3) >> 17); + o[7] = stbi__clamp((x0 - t3) >> 17); + o[1] = stbi__clamp((x1 + t2) >> 17); + o[6] = stbi__clamp((x1 - t2) >> 17); + o[2] = stbi__clamp((x2 + t1) >> 17); + o[5] = stbi__clamp((x2 - t1) >> 17); + o[3] = stbi__clamp((x3 + t0) >> 17); + o[4] = stbi__clamp((x3 - t0) >> 17); + } +} + +#ifdef STBI_SSE2 +// sse2 integer IDCT. not the fastest possible implementation but it +// produces bit-identical results to the generic C version so it's +// fully "transparent". +static void stbi__idct_simd(stbi_uc *out, int out_stride, short data[64]) { + // This is constructed to match our regular (generic) integer IDCT exactly. + __m128i row0, row1, row2, row3, row4, row5, row6, row7; + __m128i tmp; + +// dot product constant: even elems=x, odd elems=y +#define dct_const(x, y) _mm_setr_epi16((x), (y), (x), (y), (x), (y), (x), (y)) + +// out(0) = c0[even]*x + c0[odd]*y (c0, x, y 16-bit, out 32-bit) +// out(1) = c1[even]*x + c1[odd]*y +#define dct_rot(out0, out1, x, y, c0, c1) \ + __m128i c0##lo = _mm_unpacklo_epi16((x), (y)); \ + __m128i c0##hi = _mm_unpackhi_epi16((x), (y)); \ + __m128i out0##_l = _mm_madd_epi16(c0##lo, c0); \ + __m128i out0##_h = _mm_madd_epi16(c0##hi, c0); \ + __m128i out1##_l = _mm_madd_epi16(c0##lo, c1); \ + __m128i out1##_h = _mm_madd_epi16(c0##hi, c1) + +// out = in << 12 (in 16-bit, out 32-bit) +#define dct_widen(out, in) \ + __m128i out##_l = _mm_srai_epi32(_mm_unpacklo_epi16(_mm_setzero_si128(), (in)), 4); \ + __m128i out##_h = _mm_srai_epi32(_mm_unpackhi_epi16(_mm_setzero_si128(), (in)), 4) + +// wide add +#define dct_wadd(out, a, b) \ + __m128i out##_l = _mm_add_epi32(a##_l, b##_l); \ + __m128i out##_h = _mm_add_epi32(a##_h, b##_h) + +// wide sub +#define dct_wsub(out, a, b) \ + __m128i out##_l = _mm_sub_epi32(a##_l, b##_l); \ + __m128i out##_h = _mm_sub_epi32(a##_h, b##_h) + +// butterfly a/b, add bias, then shift by "s" and pack +#define dct_bfly32o(out0, out1, a, b, bias, s) \ + { \ + __m128i abiased_l = _mm_add_epi32(a##_l, bias); \ + __m128i abiased_h = _mm_add_epi32(a##_h, bias); \ + dct_wadd(sum, abiased, b); \ + dct_wsub(dif, abiased, b); \ + out0 = _mm_packs_epi32(_mm_srai_epi32(sum_l, s), _mm_srai_epi32(sum_h, s)); \ + out1 = _mm_packs_epi32(_mm_srai_epi32(dif_l, s), _mm_srai_epi32(dif_h, s)); \ + } + +// 8-bit interleave step (for transposes) +#define dct_interleave8(a, b) \ + tmp = a; \ + a = _mm_unpacklo_epi8(a, b); \ + b = _mm_unpackhi_epi8(tmp, b) + +// 16-bit interleave step (for transposes) +#define dct_interleave16(a, b) \ + tmp = a; \ + a = _mm_unpacklo_epi16(a, b); \ + b = _mm_unpackhi_epi16(tmp, b) + +#define dct_pass(bias, shift) \ + { \ + /* even part */ \ + dct_rot(t2e, t3e, row2, row6, rot0_0, rot0_1); \ + __m128i sum04 = _mm_add_epi16(row0, row4); \ + __m128i dif04 = _mm_sub_epi16(row0, row4); \ + dct_widen(t0e, sum04); \ + dct_widen(t1e, dif04); \ + dct_wadd(x0, t0e, t3e); \ + dct_wsub(x3, t0e, t3e); \ + dct_wadd(x1, t1e, t2e); \ + dct_wsub(x2, t1e, t2e); \ + /* odd part */ \ + dct_rot(y0o, y2o, row7, row3, rot2_0, rot2_1); \ + dct_rot(y1o, y3o, row5, row1, rot3_0, rot3_1); \ + __m128i sum17 = _mm_add_epi16(row1, row7); \ + __m128i sum35 = _mm_add_epi16(row3, row5); \ + dct_rot(y4o, y5o, sum17, sum35, rot1_0, rot1_1); \ + dct_wadd(x4, y0o, y4o); \ + dct_wadd(x5, y1o, y5o); \ + dct_wadd(x6, y2o, y5o); \ + dct_wadd(x7, y3o, y4o); \ + dct_bfly32o(row0, row7, x0, x7, bias, shift); \ + dct_bfly32o(row1, row6, x1, x6, bias, shift); \ + dct_bfly32o(row2, row5, x2, x5, bias, shift); \ + dct_bfly32o(row3, row4, x3, x4, bias, shift); \ + } + + __m128i rot0_0 = + dct_const(stbi__f2f(0.5411961f), stbi__f2f(0.5411961f) + stbi__f2f(-1.847759065f)); + __m128i rot0_1 = + dct_const(stbi__f2f(0.5411961f) + stbi__f2f(0.765366865f), stbi__f2f(0.5411961f)); + __m128i rot1_0 = + dct_const(stbi__f2f(1.175875602f) + stbi__f2f(-0.899976223f), stbi__f2f(1.175875602f)); + __m128i rot1_1 = + dct_const(stbi__f2f(1.175875602f), stbi__f2f(1.175875602f) + stbi__f2f(-2.562915447f)); + __m128i rot2_0 = + dct_const(stbi__f2f(-1.961570560f) + stbi__f2f(0.298631336f), stbi__f2f(-1.961570560f)); + __m128i rot2_1 = + dct_const(stbi__f2f(-1.961570560f), stbi__f2f(-1.961570560f) + stbi__f2f(3.072711026f)); + __m128i rot3_0 = + dct_const(stbi__f2f(-0.390180644f) + stbi__f2f(2.053119869f), stbi__f2f(-0.390180644f)); + __m128i rot3_1 = + dct_const(stbi__f2f(-0.390180644f), stbi__f2f(-0.390180644f) + stbi__f2f(1.501321110f)); + + // rounding biases in column/row passes, see stbi__idct_block for + // explanation. + __m128i bias_0 = _mm_set1_epi32(512); + __m128i bias_1 = _mm_set1_epi32(65536 + (128 << 17)); + + // load + row0 = _mm_load_si128((const __m128i *)(data + 0 * 8)); + row1 = _mm_load_si128((const __m128i *)(data + 1 * 8)); + row2 = _mm_load_si128((const __m128i *)(data + 2 * 8)); + row3 = _mm_load_si128((const __m128i *)(data + 3 * 8)); + row4 = _mm_load_si128((const __m128i *)(data + 4 * 8)); + row5 = _mm_load_si128((const __m128i *)(data + 5 * 8)); + row6 = _mm_load_si128((const __m128i *)(data + 6 * 8)); + row7 = _mm_load_si128((const __m128i *)(data + 7 * 8)); + + // column pass + dct_pass(bias_0, 10); + + { + // 16bit 8x8 transpose pass 1 + dct_interleave16(row0, row4); + dct_interleave16(row1, row5); + dct_interleave16(row2, row6); + dct_interleave16(row3, row7); + + // transpose pass 2 + dct_interleave16(row0, row2); + dct_interleave16(row1, row3); + dct_interleave16(row4, row6); + dct_interleave16(row5, row7); + + // transpose pass 3 + dct_interleave16(row0, row1); + dct_interleave16(row2, row3); + dct_interleave16(row4, row5); + dct_interleave16(row6, row7); + } + + // row pass + dct_pass(bias_1, 17); + + { + // pack + __m128i p0 = _mm_packus_epi16(row0, row1); // a0a1a2a3...a7b0b1b2b3...b7 + __m128i p1 = _mm_packus_epi16(row2, row3); + __m128i p2 = _mm_packus_epi16(row4, row5); + __m128i p3 = _mm_packus_epi16(row6, row7); + + // 8bit 8x8 transpose pass 1 + dct_interleave8(p0, p2); // a0e0a1e1... + dct_interleave8(p1, p3); // c0g0c1g1... + + // transpose pass 2 + dct_interleave8(p0, p1); // a0c0e0g0... + dct_interleave8(p2, p3); // b0d0f0h0... + + // transpose pass 3 + dct_interleave8(p0, p2); // a0b0c0d0... + dct_interleave8(p1, p3); // a4b4c4d4... + + // store + _mm_storel_epi64((__m128i *)out, p0); + out += out_stride; + _mm_storel_epi64((__m128i *)out, _mm_shuffle_epi32(p0, 0x4e)); + out += out_stride; + _mm_storel_epi64((__m128i *)out, p2); + out += out_stride; + _mm_storel_epi64((__m128i *)out, _mm_shuffle_epi32(p2, 0x4e)); + out += out_stride; + _mm_storel_epi64((__m128i *)out, p1); + out += out_stride; + _mm_storel_epi64((__m128i *)out, _mm_shuffle_epi32(p1, 0x4e)); + out += out_stride; + _mm_storel_epi64((__m128i *)out, p3); + out += out_stride; + _mm_storel_epi64((__m128i *)out, _mm_shuffle_epi32(p3, 0x4e)); + } + +#undef dct_const +#undef dct_rot +#undef dct_widen +#undef dct_wadd +#undef dct_wsub +#undef dct_bfly32o +#undef dct_interleave8 +#undef dct_interleave16 +#undef dct_pass +} + +#endif // STBI_SSE2 + +#ifdef STBI_NEON + +// NEON integer IDCT. should produce bit-identical +// results to the generic C version. +static void stbi__idct_simd(stbi_uc *out, int out_stride, short data[64]) { + int16x8_t row0, row1, row2, row3, row4, row5, row6, row7; + + int16x4_t rot0_0 = vdup_n_s16(stbi__f2f(0.5411961f)); + int16x4_t rot0_1 = vdup_n_s16(stbi__f2f(-1.847759065f)); + int16x4_t rot0_2 = vdup_n_s16(stbi__f2f(0.765366865f)); + int16x4_t rot1_0 = vdup_n_s16(stbi__f2f(1.175875602f)); + int16x4_t rot1_1 = vdup_n_s16(stbi__f2f(-0.899976223f)); + int16x4_t rot1_2 = vdup_n_s16(stbi__f2f(-2.562915447f)); + int16x4_t rot2_0 = vdup_n_s16(stbi__f2f(-1.961570560f)); + int16x4_t rot2_1 = vdup_n_s16(stbi__f2f(-0.390180644f)); + int16x4_t rot3_0 = vdup_n_s16(stbi__f2f(0.298631336f)); + int16x4_t rot3_1 = vdup_n_s16(stbi__f2f(2.053119869f)); + int16x4_t rot3_2 = vdup_n_s16(stbi__f2f(3.072711026f)); + int16x4_t rot3_3 = vdup_n_s16(stbi__f2f(1.501321110f)); + +#define dct_long_mul(out, inq, coeff) \ + int32x4_t out##_l = vmull_s16(vget_low_s16(inq), coeff); \ + int32x4_t out##_h = vmull_s16(vget_high_s16(inq), coeff) + +#define dct_long_mac(out, acc, inq, coeff) \ + int32x4_t out##_l = vmlal_s16(acc##_l, vget_low_s16(inq), coeff); \ + int32x4_t out##_h = vmlal_s16(acc##_h, vget_high_s16(inq), coeff) + +#define dct_widen(out, inq) \ + int32x4_t out##_l = vshll_n_s16(vget_low_s16(inq), 12); \ + int32x4_t out##_h = vshll_n_s16(vget_high_s16(inq), 12) + +// wide add +#define dct_wadd(out, a, b) \ + int32x4_t out##_l = vaddq_s32(a##_l, b##_l); \ + int32x4_t out##_h = vaddq_s32(a##_h, b##_h) + +// wide sub +#define dct_wsub(out, a, b) \ + int32x4_t out##_l = vsubq_s32(a##_l, b##_l); \ + int32x4_t out##_h = vsubq_s32(a##_h, b##_h) + +// butterfly a/b, then shift using "shiftop" by "s" and pack +#define dct_bfly32o(out0, out1, a, b, shiftop, s) \ + { \ + dct_wadd(sum, a, b); \ + dct_wsub(dif, a, b); \ + out0 = vcombine_s16(shiftop(sum_l, s), shiftop(sum_h, s)); \ + out1 = vcombine_s16(shiftop(dif_l, s), shiftop(dif_h, s)); \ + } + +#define dct_pass(shiftop, shift) \ + { \ + /* even part */ \ + int16x8_t sum26 = vaddq_s16(row2, row6); \ + dct_long_mul(p1e, sum26, rot0_0); \ + dct_long_mac(t2e, p1e, row6, rot0_1); \ + dct_long_mac(t3e, p1e, row2, rot0_2); \ + int16x8_t sum04 = vaddq_s16(row0, row4); \ + int16x8_t dif04 = vsubq_s16(row0, row4); \ + dct_widen(t0e, sum04); \ + dct_widen(t1e, dif04); \ + dct_wadd(x0, t0e, t3e); \ + dct_wsub(x3, t0e, t3e); \ + dct_wadd(x1, t1e, t2e); \ + dct_wsub(x2, t1e, t2e); \ + /* odd part */ \ + int16x8_t sum15 = vaddq_s16(row1, row5); \ + int16x8_t sum17 = vaddq_s16(row1, row7); \ + int16x8_t sum35 = vaddq_s16(row3, row5); \ + int16x8_t sum37 = vaddq_s16(row3, row7); \ + int16x8_t sumodd = vaddq_s16(sum17, sum35); \ + dct_long_mul(p5o, sumodd, rot1_0); \ + dct_long_mac(p1o, p5o, sum17, rot1_1); \ + dct_long_mac(p2o, p5o, sum35, rot1_2); \ + dct_long_mul(p3o, sum37, rot2_0); \ + dct_long_mul(p4o, sum15, rot2_1); \ + dct_wadd(sump13o, p1o, p3o); \ + dct_wadd(sump24o, p2o, p4o); \ + dct_wadd(sump23o, p2o, p3o); \ + dct_wadd(sump14o, p1o, p4o); \ + dct_long_mac(x4, sump13o, row7, rot3_0); \ + dct_long_mac(x5, sump24o, row5, rot3_1); \ + dct_long_mac(x6, sump23o, row3, rot3_2); \ + dct_long_mac(x7, sump14o, row1, rot3_3); \ + dct_bfly32o(row0, row7, x0, x7, shiftop, shift); \ + dct_bfly32o(row1, row6, x1, x6, shiftop, shift); \ + dct_bfly32o(row2, row5, x2, x5, shiftop, shift); \ + dct_bfly32o(row3, row4, x3, x4, shiftop, shift); \ + } + + // load + row0 = vld1q_s16(data + 0 * 8); + row1 = vld1q_s16(data + 1 * 8); + row2 = vld1q_s16(data + 2 * 8); + row3 = vld1q_s16(data + 3 * 8); + row4 = vld1q_s16(data + 4 * 8); + row5 = vld1q_s16(data + 5 * 8); + row6 = vld1q_s16(data + 6 * 8); + row7 = vld1q_s16(data + 7 * 8); + + // add DC bias + row0 = vaddq_s16(row0, vsetq_lane_s16(1024, vdupq_n_s16(0), 0)); + + // column pass + dct_pass(vrshrn_n_s32, 10); + + // 16bit 8x8 transpose + { +// these three map to a single VTRN.16, VTRN.32, and VSWP, respectively. +// whether compilers actually get this is another story, sadly. +#define dct_trn16(x, y) \ + { \ + int16x8x2_t t = vtrnq_s16(x, y); \ + x = t.val[0]; \ + y = t.val[1]; \ + } +#define dct_trn32(x, y) \ + { \ + int32x4x2_t t = vtrnq_s32(vreinterpretq_s32_s16(x), vreinterpretq_s32_s16(y)); \ + x = vreinterpretq_s16_s32(t.val[0]); \ + y = vreinterpretq_s16_s32(t.val[1]); \ + } +#define dct_trn64(x, y) \ + { \ + int16x8_t x0 = x; \ + int16x8_t y0 = y; \ + x = vcombine_s16(vget_low_s16(x0), vget_low_s16(y0)); \ + y = vcombine_s16(vget_high_s16(x0), vget_high_s16(y0)); \ + } + + // pass 1 + dct_trn16(row0, row1); // a0b0a2b2a4b4a6b6 + dct_trn16(row2, row3); + dct_trn16(row4, row5); + dct_trn16(row6, row7); + + // pass 2 + dct_trn32(row0, row2); // a0b0c0d0a4b4c4d4 + dct_trn32(row1, row3); + dct_trn32(row4, row6); + dct_trn32(row5, row7); + + // pass 3 + dct_trn64(row0, row4); // a0b0c0d0e0f0g0h0 + dct_trn64(row1, row5); + dct_trn64(row2, row6); + dct_trn64(row3, row7); + +#undef dct_trn16 +#undef dct_trn32 +#undef dct_trn64 + } + + // row pass + // vrshrn_n_s32 only supports shifts up to 16, we need + // 17. so do a non-rounding shift of 16 first then follow + // up with a rounding shift by 1. + dct_pass(vshrn_n_s32, 16); + + { + // pack and round + uint8x8_t p0 = vqrshrun_n_s16(row0, 1); + uint8x8_t p1 = vqrshrun_n_s16(row1, 1); + uint8x8_t p2 = vqrshrun_n_s16(row2, 1); + uint8x8_t p3 = vqrshrun_n_s16(row3, 1); + uint8x8_t p4 = vqrshrun_n_s16(row4, 1); + uint8x8_t p5 = vqrshrun_n_s16(row5, 1); + uint8x8_t p6 = vqrshrun_n_s16(row6, 1); + uint8x8_t p7 = vqrshrun_n_s16(row7, 1); + + // again, these can translate into one instruction, but often don't. +#define dct_trn8_8(x, y) \ + { \ + uint8x8x2_t t = vtrn_u8(x, y); \ + x = t.val[0]; \ + y = t.val[1]; \ + } +#define dct_trn8_16(x, y) \ + { \ + uint16x4x2_t t = vtrn_u16(vreinterpret_u16_u8(x), vreinterpret_u16_u8(y)); \ + x = vreinterpret_u8_u16(t.val[0]); \ + y = vreinterpret_u8_u16(t.val[1]); \ + } +#define dct_trn8_32(x, y) \ + { \ + uint32x2x2_t t = vtrn_u32(vreinterpret_u32_u8(x), vreinterpret_u32_u8(y)); \ + x = vreinterpret_u8_u32(t.val[0]); \ + y = vreinterpret_u8_u32(t.val[1]); \ + } + + // sadly can't use interleaved stores here since we only write + // 8 bytes to each scan line! + + // 8x8 8-bit transpose pass 1 + dct_trn8_8(p0, p1); + dct_trn8_8(p2, p3); + dct_trn8_8(p4, p5); + dct_trn8_8(p6, p7); + + // pass 2 + dct_trn8_16(p0, p2); + dct_trn8_16(p1, p3); + dct_trn8_16(p4, p6); + dct_trn8_16(p5, p7); + + // pass 3 + dct_trn8_32(p0, p4); + dct_trn8_32(p1, p5); + dct_trn8_32(p2, p6); + dct_trn8_32(p3, p7); + + // store + vst1_u8(out, p0); + out += out_stride; + vst1_u8(out, p1); + out += out_stride; + vst1_u8(out, p2); + out += out_stride; + vst1_u8(out, p3); + out += out_stride; + vst1_u8(out, p4); + out += out_stride; + vst1_u8(out, p5); + out += out_stride; + vst1_u8(out, p6); + out += out_stride; + vst1_u8(out, p7); + +#undef dct_trn8_8 +#undef dct_trn8_16 +#undef dct_trn8_32 + } + +#undef dct_long_mul +#undef dct_long_mac +#undef dct_widen +#undef dct_wadd +#undef dct_wsub +#undef dct_bfly32o +#undef dct_pass +} + +#endif // STBI_NEON + +#define STBI__MARKER_none 0xff +// if there's a pending marker from the entropy stream, return that +// otherwise, fetch from the stream and get a marker. if there's no +// marker, return 0xff, which is never a valid marker value +static stbi_uc stbi__get_marker(stbi__jpeg *j) { + stbi_uc x; + if (j->marker != STBI__MARKER_none) { + x = j->marker; + j->marker = STBI__MARKER_none; + return x; + } + x = stbi__get8(j->s); + if (x != 0xff) return STBI__MARKER_none; + while (x == 0xff) x = stbi__get8(j->s); // consume repeated 0xff fill bytes + return x; +} + +// in each scan, we'll have scan_n components, and the order +// of the components is specified by order[] +#define STBI__RESTART(x) ((x) >= 0xd0 && (x) <= 0xd7) + +// after a restart interval, stbi__jpeg_reset the entropy decoder and +// the dc prediction +static void stbi__jpeg_reset(stbi__jpeg *j) { + j->code_bits = 0; + j->code_buffer = 0; + j->nomore = 0; + j->img_comp[0].dc_pred = j->img_comp[1].dc_pred = j->img_comp[2].dc_pred = + j->img_comp[3].dc_pred = 0; + j->marker = STBI__MARKER_none; + j->todo = j->restart_interval ? j->restart_interval : 0x7fffffff; + j->eob_run = 0; + // no more than 1<<31 MCUs if no restart_interal? that's plenty safe, + // since we don't even allow 1<<30 pixels +} + +static int stbi__parse_entropy_coded_data(stbi__jpeg *z) { + stbi__jpeg_reset(z); + if (!z->progressive) { + if (z->scan_n == 1) { + int i, j; + STBI_SIMD_ALIGN(short, data[64]); + int n = z->order[0]; + // non-interleaved data, we just need to process one block at a + // time, in trivial scanline order number of blocks to do just + // depends on how many actual "pixels" this component has, + // independent of interleaved MCU blocking and such + int w = (z->img_comp[n].x + 7) >> 3; + int h = (z->img_comp[n].y + 7) >> 3; + for (j = 0; j < h; ++j) { + for (i = 0; i < w; ++i) { + int ha = z->img_comp[n].ha; + if (!stbi__jpeg_decode_block(z, data, z->huff_dc + z->img_comp[n].hd, + z->huff_ac + ha, z->fast_ac[ha], n, + z->dequant[z->img_comp[n].tq])) + return 0; + z->idct_block_kernel(z->img_comp[n].data + z->img_comp[n].w2 * j * 8 + i * 8, + z->img_comp[n].w2, data); + // every data block is an MCU, so countdown the restart + // interval + if (--z->todo <= 0) { + if (z->code_bits < 24) stbi__grow_buffer_unsafe(z); + // if it's NOT a restart, then just bail, so we get + // corrupt data rather than no data + if (!STBI__RESTART(z->marker)) return 1; + stbi__jpeg_reset(z); + } + } + } + return 1; + } else { // interleaved + int i, j, k, x, y; + STBI_SIMD_ALIGN(short, data[64]); + for (j = 0; j < z->img_mcu_y; ++j) { + for (i = 0; i < z->img_mcu_x; ++i) { + // scan an interleaved mcu... process scan_n components in + // order + for (k = 0; k < z->scan_n; ++k) { + int n = z->order[k]; + // scan out an mcu's worth of this component; that's + // just determined by the basic H and V specified for + // the component + for (y = 0; y < z->img_comp[n].v; ++y) { + for (x = 0; x < z->img_comp[n].h; ++x) { + int x2 = (i * z->img_comp[n].h + x) * 8; + int y2 = (j * z->img_comp[n].v + y) * 8; + int ha = z->img_comp[n].ha; + if (!stbi__jpeg_decode_block( + z, data, z->huff_dc + z->img_comp[n].hd, z->huff_ac + ha, + z->fast_ac[ha], n, z->dequant[z->img_comp[n].tq])) + return 0; + z->idct_block_kernel(z->img_comp[n].data + z->img_comp[n].w2 * y2 + + x2, + z->img_comp[n].w2, data); + } + } + } + // after all interleaved components, that's an interleaved + // MCU, so now count down the restart interval + if (--z->todo <= 0) { + if (z->code_bits < 24) stbi__grow_buffer_unsafe(z); + if (!STBI__RESTART(z->marker)) return 1; + stbi__jpeg_reset(z); + } + } + } + return 1; + } + } else { + if (z->scan_n == 1) { + int i, j; + int n = z->order[0]; + // non-interleaved data, we just need to process one block at a + // time, in trivial scanline order number of blocks to do just + // depends on how many actual "pixels" this component has, + // independent of interleaved MCU blocking and such + int w = (z->img_comp[n].x + 7) >> 3; + int h = (z->img_comp[n].y + 7) >> 3; + for (j = 0; j < h; ++j) { + for (i = 0; i < w; ++i) { + short *data = z->img_comp[n].coeff + 64 * (i + j * z->img_comp[n].coeff_w); + if (z->spec_start == 0) { + if (!stbi__jpeg_decode_block_prog_dc(z, data, + &z->huff_dc[z->img_comp[n].hd], n)) + return 0; + } else { + int ha = z->img_comp[n].ha; + if (!stbi__jpeg_decode_block_prog_ac(z, data, &z->huff_ac[ha], + z->fast_ac[ha])) + return 0; + } + // every data block is an MCU, so countdown the restart + // interval + if (--z->todo <= 0) { + if (z->code_bits < 24) stbi__grow_buffer_unsafe(z); + if (!STBI__RESTART(z->marker)) return 1; + stbi__jpeg_reset(z); + } + } + } + return 1; + } else { // interleaved + int i, j, k, x, y; + for (j = 0; j < z->img_mcu_y; ++j) { + for (i = 0; i < z->img_mcu_x; ++i) { + // scan an interleaved mcu... process scan_n components in + // order + for (k = 0; k < z->scan_n; ++k) { + int n = z->order[k]; + // scan out an mcu's worth of this component; that's + // just determined by the basic H and V specified for + // the component + for (y = 0; y < z->img_comp[n].v; ++y) { + for (x = 0; x < z->img_comp[n].h; ++x) { + int x2 = (i * z->img_comp[n].h + x); + int y2 = (j * z->img_comp[n].v + y); + short *data = + z->img_comp[n].coeff + 64 * (x2 + y2 * z->img_comp[n].coeff_w); + if (!stbi__jpeg_decode_block_prog_dc( + z, data, &z->huff_dc[z->img_comp[n].hd], n)) + return 0; + } + } + } + // after all interleaved components, that's an interleaved + // MCU, so now count down the restart interval + if (--z->todo <= 0) { + if (z->code_bits < 24) stbi__grow_buffer_unsafe(z); + if (!STBI__RESTART(z->marker)) return 1; + stbi__jpeg_reset(z); + } + } + } + return 1; + } + } +} + +static void stbi__jpeg_dequantize(short *data, stbi__uint16 *dequant) { + int i; + for (i = 0; i < 64; ++i) data[i] *= dequant[i]; +} + +static void stbi__jpeg_finish(stbi__jpeg *z) { + if (z->progressive) { + // dequantize and idct the data + int i, j, n; + for (n = 0; n < z->s->img_n; ++n) { + int w = (z->img_comp[n].x + 7) >> 3; + int h = (z->img_comp[n].y + 7) >> 3; + for (j = 0; j < h; ++j) { + for (i = 0; i < w; ++i) { + short *data = z->img_comp[n].coeff + 64 * (i + j * z->img_comp[n].coeff_w); + stbi__jpeg_dequantize(data, z->dequant[z->img_comp[n].tq]); + z->idct_block_kernel(z->img_comp[n].data + z->img_comp[n].w2 * j * 8 + i * 8, + z->img_comp[n].w2, data); + } + } + } + } +} + +static int stbi__process_marker(stbi__jpeg *z, int m) { + int L; + switch (m) { + case STBI__MARKER_none: // no marker found + return stbi__err("expected marker", "Corrupt JPEG"); + + case 0xDD: // DRI - specify restart interval + if (stbi__get16be(z->s) != 4) return stbi__err("bad DRI len", "Corrupt JPEG"); + z->restart_interval = stbi__get16be(z->s); + return 1; + + case 0xDB: // DQT - define quantization table + L = stbi__get16be(z->s) - 2; + while (L > 0) { + int q = stbi__get8(z->s); + int p = q >> 4, sixteen = (p != 0); + int t = q & 15, i; + if (p != 0 && p != 1) return stbi__err("bad DQT type", "Corrupt JPEG"); + if (t > 3) return stbi__err("bad DQT table", "Corrupt JPEG"); + + for (i = 0; i < 64; ++i) + z->dequant[t][stbi__jpeg_dezigzag[i]] = + (stbi__uint16)(sixteen ? stbi__get16be(z->s) : stbi__get8(z->s)); + L -= (sixteen ? 129 : 65); + } + return L == 0; + + case 0xC4: // DHT - define huffman table + L = stbi__get16be(z->s) - 2; + while (L > 0) { + stbi_uc *v; + int sizes[16], i, n = 0; + int q = stbi__get8(z->s); + int tc = q >> 4; + int th = q & 15; + if (tc > 1 || th > 3) return stbi__err("bad DHT header", "Corrupt JPEG"); + for (i = 0; i < 16; ++i) { + sizes[i] = stbi__get8(z->s); + n += sizes[i]; + } + if (n > 256) + return stbi__err("bad DHT header", + "Corrupt JPEG"); // Loop over i < n would write + // past end of values! + L -= 17; + if (tc == 0) { + if (!stbi__build_huffman(z->huff_dc + th, sizes)) return 0; + v = z->huff_dc[th].values; + } else { + if (!stbi__build_huffman(z->huff_ac + th, sizes)) return 0; + v = z->huff_ac[th].values; + } + for (i = 0; i < n; ++i) v[i] = stbi__get8(z->s); + if (tc != 0) stbi__build_fast_ac(z->fast_ac[th], z->huff_ac + th); + L -= n; + } + return L == 0; + } + + // check for comment block or APP blocks + if ((m >= 0xE0 && m <= 0xEF) || m == 0xFE) { + L = stbi__get16be(z->s); + if (L < 2) { + if (m == 0xFE) + return stbi__err("bad COM len", "Corrupt JPEG"); + else + return stbi__err("bad APP len", "Corrupt JPEG"); + } + L -= 2; + + if (m == 0xE0 && L >= 5) { // JFIF APP0 segment + static const unsigned char tag[5] = {'J', 'F', 'I', 'F', '\0'}; + int ok = 1; + int i; + for (i = 0; i < 5; ++i) + if (stbi__get8(z->s) != tag[i]) ok = 0; + L -= 5; + if (ok) z->jfif = 1; + } else if (m == 0xEE && L >= 12) { // Adobe APP14 segment + static const unsigned char tag[6] = {'A', 'd', 'o', 'b', 'e', '\0'}; + int ok = 1; + int i; + for (i = 0; i < 6; ++i) + if (stbi__get8(z->s) != tag[i]) ok = 0; + L -= 6; + if (ok) { + stbi__get8(z->s); // version + stbi__get16be(z->s); // flags0 + stbi__get16be(z->s); // flags1 + z->app14_color_transform = stbi__get8(z->s); // color transform + L -= 6; + } + } + + stbi__skip(z->s, L); + return 1; + } + + return stbi__err("unknown marker", "Corrupt JPEG"); +} + +// after we see SOS +static int stbi__process_scan_header(stbi__jpeg *z) { + int i; + int Ls = stbi__get16be(z->s); + z->scan_n = stbi__get8(z->s); + if (z->scan_n < 1 || z->scan_n > 4 || z->scan_n > (int)z->s->img_n) + return stbi__err("bad SOS component count", "Corrupt JPEG"); + if (Ls != 6 + 2 * z->scan_n) return stbi__err("bad SOS len", "Corrupt JPEG"); + for (i = 0; i < z->scan_n; ++i) { + int id = stbi__get8(z->s), which; + int q = stbi__get8(z->s); + for (which = 0; which < z->s->img_n; ++which) + if (z->img_comp[which].id == id) break; + if (which == z->s->img_n) return 0; // no match + z->img_comp[which].hd = q >> 4; + if (z->img_comp[which].hd > 3) return stbi__err("bad DC huff", "Corrupt JPEG"); + z->img_comp[which].ha = q & 15; + if (z->img_comp[which].ha > 3) return stbi__err("bad AC huff", "Corrupt JPEG"); + z->order[i] = which; + } + + { + int aa; + z->spec_start = stbi__get8(z->s); + z->spec_end = stbi__get8(z->s); // should be 63, but might be 0 + aa = stbi__get8(z->s); + z->succ_high = (aa >> 4); + z->succ_low = (aa & 15); + if (z->progressive) { + if (z->spec_start > 63 || z->spec_end > 63 || z->spec_start > z->spec_end || + z->succ_high > 13 || z->succ_low > 13) + return stbi__err("bad SOS", "Corrupt JPEG"); + } else { + if (z->spec_start != 0) return stbi__err("bad SOS", "Corrupt JPEG"); + if (z->succ_high != 0 || z->succ_low != 0) return stbi__err("bad SOS", "Corrupt JPEG"); + z->spec_end = 63; + } + } + + return 1; +} + +static int stbi__free_jpeg_components(stbi__jpeg *z, int ncomp, int why) { + int i; + for (i = 0; i < ncomp; ++i) { + if (z->img_comp[i].raw_data) { + STBI_FREE(z->img_comp[i].raw_data); + z->img_comp[i].raw_data = NULL; + z->img_comp[i].data = NULL; + } + if (z->img_comp[i].raw_coeff) { + STBI_FREE(z->img_comp[i].raw_coeff); + z->img_comp[i].raw_coeff = 0; + z->img_comp[i].coeff = 0; + } + if (z->img_comp[i].linebuf) { + STBI_FREE(z->img_comp[i].linebuf); + z->img_comp[i].linebuf = NULL; + } + } + return why; +} + +static int stbi__process_frame_header(stbi__jpeg *z, int scan) { + stbi__context *s = z->s; + int Lf, p, i, q, h_max = 1, v_max = 1, c; + Lf = stbi__get16be(s); + if (Lf < 11) return stbi__err("bad SOF len", "Corrupt JPEG"); // JPEG + p = stbi__get8(s); + if (p != 8) + return stbi__err("only 8-bit", + "JPEG format not supported: 8-bit only"); // JPEG baseline + s->img_y = stbi__get16be(s); + if (s->img_y == 0) + return stbi__err("no header height", + "JPEG format not supported: delayed height"); // Legal, but we don't + // handle it--but + // neither does IJG + s->img_x = stbi__get16be(s); + if (s->img_x == 0) return stbi__err("0 width", "Corrupt JPEG"); // JPEG requires + if (s->img_y > STBI_MAX_DIMENSIONS) + return stbi__err("too large", "Very large image (corrupt?)"); + if (s->img_x > STBI_MAX_DIMENSIONS) + return stbi__err("too large", "Very large image (corrupt?)"); + c = stbi__get8(s); + if (c != 3 && c != 1 && c != 4) return stbi__err("bad component count", "Corrupt JPEG"); + s->img_n = c; + for (i = 0; i < c; ++i) { + z->img_comp[i].data = NULL; + z->img_comp[i].linebuf = NULL; + } + + if (Lf != 8 + 3 * s->img_n) return stbi__err("bad SOF len", "Corrupt JPEG"); + + z->rgb = 0; + for (i = 0; i < s->img_n; ++i) { + static const unsigned char rgb[3] = {'R', 'G', 'B'}; + z->img_comp[i].id = stbi__get8(s); + if (s->img_n == 3 && z->img_comp[i].id == rgb[i]) ++z->rgb; + q = stbi__get8(s); + z->img_comp[i].h = (q >> 4); + if (!z->img_comp[i].h || z->img_comp[i].h > 4) return stbi__err("bad H", "Corrupt JPEG"); + z->img_comp[i].v = q & 15; + if (!z->img_comp[i].v || z->img_comp[i].v > 4) return stbi__err("bad V", "Corrupt JPEG"); + z->img_comp[i].tq = stbi__get8(s); + if (z->img_comp[i].tq > 3) return stbi__err("bad TQ", "Corrupt JPEG"); + } + + if (scan != STBI__SCAN_load) return 1; + + if (!stbi__mad3sizes_valid(s->img_x, s->img_y, s->img_n, 0)) + return stbi__err("too large", "Image too large to decode"); + + for (i = 0; i < s->img_n; ++i) { + if (z->img_comp[i].h > h_max) h_max = z->img_comp[i].h; + if (z->img_comp[i].v > v_max) v_max = z->img_comp[i].v; + } + + // check that plane subsampling factors are integer ratios; our resamplers + // can't deal with fractional ratios and I've never seen a non-corrupted + // JPEG file actually use them + for (i = 0; i < s->img_n; ++i) { + if (h_max % z->img_comp[i].h != 0) return stbi__err("bad H", "Corrupt JPEG"); + if (v_max % z->img_comp[i].v != 0) return stbi__err("bad V", "Corrupt JPEG"); + } + + // compute interleaved mcu info + z->img_h_max = h_max; + z->img_v_max = v_max; + z->img_mcu_w = h_max * 8; + z->img_mcu_h = v_max * 8; + // these sizes can't be more than 17 bits + z->img_mcu_x = (s->img_x + z->img_mcu_w - 1) / z->img_mcu_w; + z->img_mcu_y = (s->img_y + z->img_mcu_h - 1) / z->img_mcu_h; + + for (i = 0; i < s->img_n; ++i) { + // number of effective pixels (e.g. for non-interleaved MCU) + z->img_comp[i].x = (s->img_x * z->img_comp[i].h + h_max - 1) / h_max; + z->img_comp[i].y = (s->img_y * z->img_comp[i].v + v_max - 1) / v_max; + // to simplify generation, we'll allocate enough memory to decode + // the bogus oversized data from using interleaved MCUs and their + // big blocks (e.g. a 16x16 iMCU on an image of width 33); we won't + // discard the extra data until colorspace conversion + // + // img_mcu_x, img_mcu_y: <=17 bits; comp[i].h and .v are <=4 (checked + // earlier) so these muls can't overflow with 32-bit ints (which we + // require) + z->img_comp[i].w2 = z->img_mcu_x * z->img_comp[i].h * 8; + z->img_comp[i].h2 = z->img_mcu_y * z->img_comp[i].v * 8; + z->img_comp[i].coeff = 0; + z->img_comp[i].raw_coeff = 0; + z->img_comp[i].linebuf = NULL; + z->img_comp[i].raw_data = stbi__malloc_mad2(z->img_comp[i].w2, z->img_comp[i].h2, 15); + if (z->img_comp[i].raw_data == NULL) + return stbi__free_jpeg_components(z, i + 1, stbi__err("outofmem", "Out of memory")); + // align blocks for idct using mmx/sse + z->img_comp[i].data = (stbi_uc *)(((size_t)z->img_comp[i].raw_data + 15) & ~15); + if (z->progressive) { + // w2, h2 are multiples of 8 (see above) + z->img_comp[i].coeff_w = z->img_comp[i].w2 / 8; + z->img_comp[i].coeff_h = z->img_comp[i].h2 / 8; + z->img_comp[i].raw_coeff = + stbi__malloc_mad3(z->img_comp[i].w2, z->img_comp[i].h2, sizeof(short), 15); + if (z->img_comp[i].raw_coeff == NULL) + return stbi__free_jpeg_components(z, i + 1, stbi__err("outofmem", "Out of memory")); + z->img_comp[i].coeff = (short *)(((size_t)z->img_comp[i].raw_coeff + 15) & ~15); + } + } + + return 1; +} + +// use comparisons since in some cases we handle more than one case (e.g. SOF) +#define stbi__DNL(x) ((x) == 0xdc) +#define stbi__SOI(x) ((x) == 0xd8) +#define stbi__EOI(x) ((x) == 0xd9) +#define stbi__SOF(x) ((x) == 0xc0 || (x) == 0xc1 || (x) == 0xc2) +#define stbi__SOS(x) ((x) == 0xda) + +#define stbi__SOF_progressive(x) ((x) == 0xc2) + +static int stbi__decode_jpeg_header(stbi__jpeg *z, int scan) { + int m; + z->jfif = 0; + z->app14_color_transform = -1; // valid values are 0,1,2 + z->marker = STBI__MARKER_none; // initialize cached marker to empty + m = stbi__get_marker(z); + if (!stbi__SOI(m)) return stbi__err("no SOI", "Corrupt JPEG"); + if (scan == STBI__SCAN_type) return 1; + m = stbi__get_marker(z); + while (!stbi__SOF(m)) { + if (!stbi__process_marker(z, m)) return 0; + m = stbi__get_marker(z); + while (m == STBI__MARKER_none) { + // some files have extra padding after their blocks, so ok, we'll + // scan + if (stbi__at_eof(z->s)) return stbi__err("no SOF", "Corrupt JPEG"); + m = stbi__get_marker(z); + } + } + z->progressive = stbi__SOF_progressive(m); + if (!stbi__process_frame_header(z, scan)) return 0; + return 1; +} + +static stbi_uc stbi__skip_jpeg_junk_at_end(stbi__jpeg *j) { + // some JPEGs have junk at end, skip over it but if we find what looks + // like a valid marker, resume there + while (!stbi__at_eof(j->s)) { + stbi_uc x = stbi__get8(j->s); + while (x == 0xff) { // might be a marker + if (stbi__at_eof(j->s)) return STBI__MARKER_none; + x = stbi__get8(j->s); + if (x != 0x00 && x != 0xff) { + // not a stuffed zero or lead-in to another marker, looks + // like an actual marker, return it + return x; + } + // stuffed zero has x=0 now which ends the loop, meaning we go + // back to regular scan loop. + // repeated 0xff keeps trying to read the next byte of the marker. + } + } + return STBI__MARKER_none; +} + +// decode image to YCbCr format +static int stbi__decode_jpeg_image(stbi__jpeg *j) { + int m; + for (m = 0; m < 4; m++) { + j->img_comp[m].raw_data = NULL; + j->img_comp[m].raw_coeff = NULL; + } + j->restart_interval = 0; + if (!stbi__decode_jpeg_header(j, STBI__SCAN_load)) return 0; + m = stbi__get_marker(j); + while (!stbi__EOI(m)) { + if (stbi__SOS(m)) { + if (!stbi__process_scan_header(j)) return 0; + if (!stbi__parse_entropy_coded_data(j)) return 0; + if (j->marker == STBI__MARKER_none) { + j->marker = stbi__skip_jpeg_junk_at_end(j); + // if we reach eof without hitting a marker, stbi__get_marker() + // below will fail and we'll eventually return 0 + } + m = stbi__get_marker(j); + if (STBI__RESTART(m)) m = stbi__get_marker(j); + } else if (stbi__DNL(m)) { + int Ld = stbi__get16be(j->s); + stbi__uint32 NL = stbi__get16be(j->s); + if (Ld != 4) return stbi__err("bad DNL len", "Corrupt JPEG"); + if (NL != j->s->img_y) return stbi__err("bad DNL height", "Corrupt JPEG"); + m = stbi__get_marker(j); + } else { + if (!stbi__process_marker(j, m)) return 1; + m = stbi__get_marker(j); + } + } + if (j->progressive) stbi__jpeg_finish(j); + return 1; +} + +// static jfif-centered resampling (across block boundaries) + +typedef stbi_uc *(*resample_row_func)(stbi_uc *out, stbi_uc *in0, stbi_uc *in1, int w, int hs); + +#define stbi__div4(x) ((stbi_uc)((x) >> 2)) + +static stbi_uc *resample_row_1(stbi_uc *out, stbi_uc *in_near, stbi_uc *in_far, int w, int hs) { + STBI_NOTUSED(out); + STBI_NOTUSED(in_far); + STBI_NOTUSED(w); + STBI_NOTUSED(hs); + return in_near; +} + +static stbi_uc *stbi__resample_row_v_2(stbi_uc *out, stbi_uc *in_near, stbi_uc *in_far, int w, + int hs) { + // need to generate two samples vertically for every one in input + int i; + STBI_NOTUSED(hs); + for (i = 0; i < w; ++i) out[i] = stbi__div4(3 * in_near[i] + in_far[i] + 2); + return out; +} + +static stbi_uc *stbi__resample_row_h_2(stbi_uc *out, stbi_uc *in_near, stbi_uc *in_far, int w, + int hs) { + // need to generate two samples horizontally for every one in input + int i; + stbi_uc *input = in_near; + + if (w == 1) { + // if only one sample, can't do any interpolation + out[0] = out[1] = input[0]; + return out; + } + + out[0] = input[0]; + out[1] = stbi__div4(input[0] * 3 + input[1] + 2); + for (i = 1; i < w - 1; ++i) { + int n = 3 * input[i] + 2; + out[i * 2 + 0] = stbi__div4(n + input[i - 1]); + out[i * 2 + 1] = stbi__div4(n + input[i + 1]); + } + out[i * 2 + 0] = stbi__div4(input[w - 2] * 3 + input[w - 1] + 2); + out[i * 2 + 1] = input[w - 1]; + + STBI_NOTUSED(in_far); + STBI_NOTUSED(hs); + + return out; +} + +#define stbi__div16(x) ((stbi_uc)((x) >> 4)) + +static stbi_uc *stbi__resample_row_hv_2(stbi_uc *out, stbi_uc *in_near, stbi_uc *in_far, int w, + int hs) { + // need to generate 2x2 samples for every one in input + int i, t0, t1; + if (w == 1) { + out[0] = out[1] = stbi__div4(3 * in_near[0] + in_far[0] + 2); + return out; + } + + t1 = 3 * in_near[0] + in_far[0]; + out[0] = stbi__div4(t1 + 2); + for (i = 1; i < w; ++i) { + t0 = t1; + t1 = 3 * in_near[i] + in_far[i]; + out[i * 2 - 1] = stbi__div16(3 * t0 + t1 + 8); + out[i * 2] = stbi__div16(3 * t1 + t0 + 8); + } + out[w * 2 - 1] = stbi__div4(t1 + 2); + + STBI_NOTUSED(hs); + + return out; +} + +#if defined(STBI_SSE2) || defined(STBI_NEON) +static stbi_uc *stbi__resample_row_hv_2_simd(stbi_uc *out, stbi_uc *in_near, stbi_uc *in_far, int w, + int hs) { + // need to generate 2x2 samples for every one in input + int i = 0, t0, t1; + + if (w == 1) { + out[0] = out[1] = stbi__div4(3 * in_near[0] + in_far[0] + 2); + return out; + } + + t1 = 3 * in_near[0] + in_far[0]; + // process groups of 8 pixels for as long as we can. + // note we can't handle the last pixel in a row in this loop + // because we need to handle the filter boundary conditions. + for (; i < ((w - 1) & ~7); i += 8) { +#if defined(STBI_SSE2) + // load and perform the vertical filtering pass + // this uses 3*x + y = 4*x + (y - x) + __m128i zero = _mm_setzero_si128(); + __m128i farb = _mm_loadl_epi64((__m128i *)(in_far + i)); + __m128i nearb = _mm_loadl_epi64((__m128i *)(in_near + i)); + __m128i farw = _mm_unpacklo_epi8(farb, zero); + __m128i nearw = _mm_unpacklo_epi8(nearb, zero); + __m128i diff = _mm_sub_epi16(farw, nearw); + __m128i nears = _mm_slli_epi16(nearw, 2); + __m128i curr = _mm_add_epi16(nears, diff); // current row + + // horizontal filter works the same based on shifted vers of current + // row. "prev" is current row shifted right by 1 pixel; we need to + // insert the previous pixel value (from t1). + // "next" is current row shifted left by 1 pixel, with first pixel + // of next block of 8 pixels added in. + __m128i prv0 = _mm_slli_si128(curr, 2); + __m128i nxt0 = _mm_srli_si128(curr, 2); + __m128i prev = _mm_insert_epi16(prv0, t1, 0); + __m128i next = _mm_insert_epi16(nxt0, 3 * in_near[i + 8] + in_far[i + 8], 7); + + // horizontal filter, polyphase implementation since it's convenient: + // even pixels = 3*cur + prev = cur*4 + (prev - cur) + // odd pixels = 3*cur + next = cur*4 + (next - cur) + // note the shared term. + __m128i bias = _mm_set1_epi16(8); + __m128i curs = _mm_slli_epi16(curr, 2); + __m128i prvd = _mm_sub_epi16(prev, curr); + __m128i nxtd = _mm_sub_epi16(next, curr); + __m128i curb = _mm_add_epi16(curs, bias); + __m128i even = _mm_add_epi16(prvd, curb); + __m128i odd = _mm_add_epi16(nxtd, curb); + + // interleave even and odd pixels, then undo scaling. + __m128i int0 = _mm_unpacklo_epi16(even, odd); + __m128i int1 = _mm_unpackhi_epi16(even, odd); + __m128i de0 = _mm_srli_epi16(int0, 4); + __m128i de1 = _mm_srli_epi16(int1, 4); + + // pack and write output + __m128i outv = _mm_packus_epi16(de0, de1); + _mm_storeu_si128((__m128i *)(out + i * 2), outv); +#elif defined(STBI_NEON) + // load and perform the vertical filtering pass + // this uses 3*x + y = 4*x + (y - x) + uint8x8_t farb = vld1_u8(in_far + i); + uint8x8_t nearb = vld1_u8(in_near + i); + int16x8_t diff = vreinterpretq_s16_u16(vsubl_u8(farb, nearb)); + int16x8_t nears = vreinterpretq_s16_u16(vshll_n_u8(nearb, 2)); + int16x8_t curr = vaddq_s16(nears, diff); // current row + + // horizontal filter works the same based on shifted vers of current + // row. "prev" is current row shifted right by 1 pixel; we need to + // insert the previous pixel value (from t1). + // "next" is current row shifted left by 1 pixel, with first pixel + // of next block of 8 pixels added in. + int16x8_t prv0 = vextq_s16(curr, curr, 7); + int16x8_t nxt0 = vextq_s16(curr, curr, 1); + int16x8_t prev = vsetq_lane_s16(t1, prv0, 0); + int16x8_t next = vsetq_lane_s16(3 * in_near[i + 8] + in_far[i + 8], nxt0, 7); + + // horizontal filter, polyphase implementation since it's convenient: + // even pixels = 3*cur + prev = cur*4 + (prev - cur) + // odd pixels = 3*cur + next = cur*4 + (next - cur) + // note the shared term. + int16x8_t curs = vshlq_n_s16(curr, 2); + int16x8_t prvd = vsubq_s16(prev, curr); + int16x8_t nxtd = vsubq_s16(next, curr); + int16x8_t even = vaddq_s16(curs, prvd); + int16x8_t odd = vaddq_s16(curs, nxtd); + + // undo scaling and round, then store with even/odd phases interleaved + uint8x8x2_t o; + o.val[0] = vqrshrun_n_s16(even, 4); + o.val[1] = vqrshrun_n_s16(odd, 4); + vst2_u8(out + i * 2, o); +#endif + + // "previous" value for next iter + t1 = 3 * in_near[i + 7] + in_far[i + 7]; + } + + t0 = t1; + t1 = 3 * in_near[i] + in_far[i]; + out[i * 2] = stbi__div16(3 * t1 + t0 + 8); + + for (++i; i < w; ++i) { + t0 = t1; + t1 = 3 * in_near[i] + in_far[i]; + out[i * 2 - 1] = stbi__div16(3 * t0 + t1 + 8); + out[i * 2] = stbi__div16(3 * t1 + t0 + 8); + } + out[w * 2 - 1] = stbi__div4(t1 + 2); + + STBI_NOTUSED(hs); + + return out; +} +#endif + +static stbi_uc *stbi__resample_row_generic(stbi_uc *out, stbi_uc *in_near, stbi_uc *in_far, int w, + int hs) { + // resample with nearest-neighbor + int i, j; + STBI_NOTUSED(in_far); + for (i = 0; i < w; ++i) + for (j = 0; j < hs; ++j) out[i * hs + j] = in_near[i]; + return out; +} + +// this is a reduced-precision calculation of YCbCr-to-RGB introduced +// to make sure the code produces the same results in both SIMD and scalar +#define stbi__float2fixed(x) (((int)((x) * 4096.0f + 0.5f)) << 8) +static void stbi__YCbCr_to_RGB_row(stbi_uc *out, const stbi_uc *y, const stbi_uc *pcb, + const stbi_uc *pcr, int count, int step) { + int i; + for (i = 0; i < count; ++i) { + int y_fixed = (y[i] << 20) + (1 << 19); // rounding + int r, g, b; + int cr = pcr[i] - 128; + int cb = pcb[i] - 128; + r = y_fixed + cr * stbi__float2fixed(1.40200f); + g = y_fixed + (cr * -stbi__float2fixed(0.71414f)) + + ((cb * -stbi__float2fixed(0.34414f)) & 0xffff0000); + b = y_fixed + cb * stbi__float2fixed(1.77200f); + r >>= 20; + g >>= 20; + b >>= 20; + if ((unsigned)r > 255) { + if (r < 0) + r = 0; + else + r = 255; + } + if ((unsigned)g > 255) { + if (g < 0) + g = 0; + else + g = 255; + } + if ((unsigned)b > 255) { + if (b < 0) + b = 0; + else + b = 255; + } + out[0] = (stbi_uc)r; + out[1] = (stbi_uc)g; + out[2] = (stbi_uc)b; + out[3] = 255; + out += step; + } +} + +#if defined(STBI_SSE2) || defined(STBI_NEON) +static void stbi__YCbCr_to_RGB_simd(stbi_uc *out, stbi_uc const *y, stbi_uc const *pcb, + stbi_uc const *pcr, int count, int step) { + int i = 0; + +#ifdef STBI_SSE2 + // step == 3 is pretty ugly on the final interleave, and i'm not convinced + // it's useful in practice (you wouldn't use it for textures, for example). + // so just accelerate step == 4 case. + if (step == 4) { + // this is a fairly straightforward implementation and not + // super-optimized. + __m128i signflip = _mm_set1_epi8(-0x80); + __m128i cr_const0 = _mm_set1_epi16((short)(1.40200f * 4096.0f + 0.5f)); + __m128i cr_const1 = _mm_set1_epi16(-(short)(0.71414f * 4096.0f + 0.5f)); + __m128i cb_const0 = _mm_set1_epi16(-(short)(0.34414f * 4096.0f + 0.5f)); + __m128i cb_const1 = _mm_set1_epi16((short)(1.77200f * 4096.0f + 0.5f)); + __m128i y_bias = _mm_set1_epi8((char)(unsigned char)128); + __m128i xw = _mm_set1_epi16(255); // alpha channel + + for (; i + 7 < count; i += 8) { + // load + __m128i y_bytes = _mm_loadl_epi64((__m128i *)(y + i)); + __m128i cr_bytes = _mm_loadl_epi64((__m128i *)(pcr + i)); + __m128i cb_bytes = _mm_loadl_epi64((__m128i *)(pcb + i)); + __m128i cr_biased = _mm_xor_si128(cr_bytes, signflip); // -128 + __m128i cb_biased = _mm_xor_si128(cb_bytes, signflip); // -128 + + // unpack to short (and left-shift cr, cb by 8) + __m128i yw = _mm_unpacklo_epi8(y_bias, y_bytes); + __m128i crw = _mm_unpacklo_epi8(_mm_setzero_si128(), cr_biased); + __m128i cbw = _mm_unpacklo_epi8(_mm_setzero_si128(), cb_biased); + + // color transform + __m128i yws = _mm_srli_epi16(yw, 4); + __m128i cr0 = _mm_mulhi_epi16(cr_const0, crw); + __m128i cb0 = _mm_mulhi_epi16(cb_const0, cbw); + __m128i cb1 = _mm_mulhi_epi16(cbw, cb_const1); + __m128i cr1 = _mm_mulhi_epi16(crw, cr_const1); + __m128i rws = _mm_add_epi16(cr0, yws); + __m128i gwt = _mm_add_epi16(cb0, yws); + __m128i bws = _mm_add_epi16(yws, cb1); + __m128i gws = _mm_add_epi16(gwt, cr1); + + // descale + __m128i rw = _mm_srai_epi16(rws, 4); + __m128i bw = _mm_srai_epi16(bws, 4); + __m128i gw = _mm_srai_epi16(gws, 4); + + // back to byte, set up for transpose + __m128i brb = _mm_packus_epi16(rw, bw); + __m128i gxb = _mm_packus_epi16(gw, xw); + + // transpose to interleave channels + __m128i t0 = _mm_unpacklo_epi8(brb, gxb); + __m128i t1 = _mm_unpackhi_epi8(brb, gxb); + __m128i o0 = _mm_unpacklo_epi16(t0, t1); + __m128i o1 = _mm_unpackhi_epi16(t0, t1); + + // store + _mm_storeu_si128((__m128i *)(out + 0), o0); + _mm_storeu_si128((__m128i *)(out + 16), o1); + out += 32; + } + } +#endif + +#ifdef STBI_NEON + // in this version, step=3 support would be easy to add. but is there + // demand? + if (step == 4) { + // this is a fairly straightforward implementation and not + // super-optimized. + uint8x8_t signflip = vdup_n_u8(0x80); + int16x8_t cr_const0 = vdupq_n_s16((short)(1.40200f * 4096.0f + 0.5f)); + int16x8_t cr_const1 = vdupq_n_s16(-(short)(0.71414f * 4096.0f + 0.5f)); + int16x8_t cb_const0 = vdupq_n_s16(-(short)(0.34414f * 4096.0f + 0.5f)); + int16x8_t cb_const1 = vdupq_n_s16((short)(1.77200f * 4096.0f + 0.5f)); + + for (; i + 7 < count; i += 8) { + // load + uint8x8_t y_bytes = vld1_u8(y + i); + uint8x8_t cr_bytes = vld1_u8(pcr + i); + uint8x8_t cb_bytes = vld1_u8(pcb + i); + int8x8_t cr_biased = vreinterpret_s8_u8(vsub_u8(cr_bytes, signflip)); + int8x8_t cb_biased = vreinterpret_s8_u8(vsub_u8(cb_bytes, signflip)); + + // expand to s16 + int16x8_t yws = vreinterpretq_s16_u16(vshll_n_u8(y_bytes, 4)); + int16x8_t crw = vshll_n_s8(cr_biased, 7); + int16x8_t cbw = vshll_n_s8(cb_biased, 7); + + // color transform + int16x8_t cr0 = vqdmulhq_s16(crw, cr_const0); + int16x8_t cb0 = vqdmulhq_s16(cbw, cb_const0); + int16x8_t cr1 = vqdmulhq_s16(crw, cr_const1); + int16x8_t cb1 = vqdmulhq_s16(cbw, cb_const1); + int16x8_t rws = vaddq_s16(yws, cr0); + int16x8_t gws = vaddq_s16(vaddq_s16(yws, cb0), cr1); + int16x8_t bws = vaddq_s16(yws, cb1); + + // undo scaling, round, convert to byte + uint8x8x4_t o; + o.val[0] = vqrshrun_n_s16(rws, 4); + o.val[1] = vqrshrun_n_s16(gws, 4); + o.val[2] = vqrshrun_n_s16(bws, 4); + o.val[3] = vdup_n_u8(255); + + // store, interleaving r/g/b/a + vst4_u8(out, o); + out += 8 * 4; + } + } +#endif + + for (; i < count; ++i) { + int y_fixed = (y[i] << 20) + (1 << 19); // rounding + int r, g, b; + int cr = pcr[i] - 128; + int cb = pcb[i] - 128; + r = y_fixed + cr * stbi__float2fixed(1.40200f); + g = y_fixed + cr * -stbi__float2fixed(0.71414f) + + ((cb * -stbi__float2fixed(0.34414f)) & 0xffff0000); + b = y_fixed + cb * stbi__float2fixed(1.77200f); + r >>= 20; + g >>= 20; + b >>= 20; + if ((unsigned)r > 255) { + if (r < 0) + r = 0; + else + r = 255; + } + if ((unsigned)g > 255) { + if (g < 0) + g = 0; + else + g = 255; + } + if ((unsigned)b > 255) { + if (b < 0) + b = 0; + else + b = 255; + } + out[0] = (stbi_uc)r; + out[1] = (stbi_uc)g; + out[2] = (stbi_uc)b; + out[3] = 255; + out += step; + } +} +#endif + +// set up the kernels +static void stbi__setup_jpeg(stbi__jpeg *j) { + j->idct_block_kernel = stbi__idct_block; + j->YCbCr_to_RGB_kernel = stbi__YCbCr_to_RGB_row; + j->resample_row_hv_2_kernel = stbi__resample_row_hv_2; + +#ifdef STBI_SSE2 + if (stbi__sse2_available()) { + j->idct_block_kernel = stbi__idct_simd; + j->YCbCr_to_RGB_kernel = stbi__YCbCr_to_RGB_simd; + j->resample_row_hv_2_kernel = stbi__resample_row_hv_2_simd; + } +#endif + +#ifdef STBI_NEON + j->idct_block_kernel = stbi__idct_simd; + j->YCbCr_to_RGB_kernel = stbi__YCbCr_to_RGB_simd; + j->resample_row_hv_2_kernel = stbi__resample_row_hv_2_simd; +#endif +} + +// clean up the temporary component buffers +static void stbi__cleanup_jpeg(stbi__jpeg *j) { stbi__free_jpeg_components(j, j->s->img_n, 0); } + +typedef struct { + resample_row_func resample; + stbi_uc *line0, *line1; + int hs, vs; // expansion factor in each axis + int w_lores; // horizontal pixels pre-expansion + int ystep; // how far through vertical expansion we are + int ypos; // which pre-expansion row we're on +} stbi__resample; + +// fast 0..255 * 0..255 => 0..255 rounded multiplication +static stbi_uc stbi__blinn_8x8(stbi_uc x, stbi_uc y) { + unsigned int t = x * y + 128; + return (stbi_uc)((t + (t >> 8)) >> 8); +} + +static stbi_uc *load_jpeg_image(stbi__jpeg *z, int *out_x, int *out_y, int *comp, int req_comp) { + int n, decode_n, is_rgb; + z->s->img_n = 0; // make stbi__cleanup_jpeg safe + + // validate req_comp + if (req_comp < 0 || req_comp > 4) return stbi__errpuc("bad req_comp", "Internal error"); + + // load a jpeg image from whichever source, but leave in YCbCr format + if (!stbi__decode_jpeg_image(z)) { + stbi__cleanup_jpeg(z); + return NULL; + } + + // determine actual number of components to generate + n = req_comp ? req_comp : z->s->img_n >= 3 ? 3 : 1; + + is_rgb = z->s->img_n == 3 && (z->rgb == 3 || (z->app14_color_transform == 0 && !z->jfif)); + + if (z->s->img_n == 3 && n < 3 && !is_rgb) + decode_n = 1; + else + decode_n = z->s->img_n; + + // nothing to do if no components requested; check this now to avoid + // accessing uninitialized coutput[0] later + if (decode_n <= 0) { + stbi__cleanup_jpeg(z); + return NULL; + } + + // resample and color-convert + { + int k; + unsigned int i, j; + stbi_uc *output; + stbi_uc *coutput[4] = {NULL, NULL, NULL, NULL}; + + stbi__resample res_comp[4]; + + for (k = 0; k < decode_n; ++k) { + stbi__resample *r = &res_comp[k]; + + // allocate line buffer big enough for upsampling off the edges + // with upsample factor of 4 + z->img_comp[k].linebuf = (stbi_uc *)stbi__malloc(z->s->img_x + 3); + if (!z->img_comp[k].linebuf) { + stbi__cleanup_jpeg(z); + return stbi__errpuc("outofmem", "Out of memory"); + } + + r->hs = z->img_h_max / z->img_comp[k].h; + r->vs = z->img_v_max / z->img_comp[k].v; + r->ystep = r->vs >> 1; + r->w_lores = (z->s->img_x + r->hs - 1) / r->hs; + r->ypos = 0; + r->line0 = r->line1 = z->img_comp[k].data; + + if (r->hs == 1 && r->vs == 1) + r->resample = resample_row_1; + else if (r->hs == 1 && r->vs == 2) + r->resample = stbi__resample_row_v_2; + else if (r->hs == 2 && r->vs == 1) + r->resample = stbi__resample_row_h_2; + else if (r->hs == 2 && r->vs == 2) + r->resample = z->resample_row_hv_2_kernel; + else + r->resample = stbi__resample_row_generic; + } + + // can't error after this so, this is safe + output = (stbi_uc *)stbi__malloc_mad3(n, z->s->img_x, z->s->img_y, 1); + if (!output) { + stbi__cleanup_jpeg(z); + return stbi__errpuc("outofmem", "Out of memory"); + } + + // now go ahead and resample + for (j = 0; j < z->s->img_y; ++j) { + stbi_uc *out = output + n * z->s->img_x * j; + for (k = 0; k < decode_n; ++k) { + stbi__resample *r = &res_comp[k]; + int y_bot = r->ystep >= (r->vs >> 1); + coutput[k] = r->resample(z->img_comp[k].linebuf, y_bot ? r->line1 : r->line0, + y_bot ? r->line0 : r->line1, r->w_lores, r->hs); + if (++r->ystep >= r->vs) { + r->ystep = 0; + r->line0 = r->line1; + if (++r->ypos < z->img_comp[k].y) r->line1 += z->img_comp[k].w2; + } + } + if (n >= 3) { + stbi_uc *y = coutput[0]; + if (z->s->img_n == 3) { + if (is_rgb) { + for (i = 0; i < z->s->img_x; ++i) { + out[0] = y[i]; + out[1] = coutput[1][i]; + out[2] = coutput[2][i]; + out[3] = 255; + out += n; + } + } else { + z->YCbCr_to_RGB_kernel(out, y, coutput[1], coutput[2], z->s->img_x, n); + } + } else if (z->s->img_n == 4) { + if (z->app14_color_transform == 0) { // CMYK + for (i = 0; i < z->s->img_x; ++i) { + stbi_uc m = coutput[3][i]; + out[0] = stbi__blinn_8x8(coutput[0][i], m); + out[1] = stbi__blinn_8x8(coutput[1][i], m); + out[2] = stbi__blinn_8x8(coutput[2][i], m); + out[3] = 255; + out += n; + } + } else if (z->app14_color_transform == 2) { // YCCK + z->YCbCr_to_RGB_kernel(out, y, coutput[1], coutput[2], z->s->img_x, n); + for (i = 0; i < z->s->img_x; ++i) { + stbi_uc m = coutput[3][i]; + out[0] = stbi__blinn_8x8(255 - out[0], m); + out[1] = stbi__blinn_8x8(255 - out[1], m); + out[2] = stbi__blinn_8x8(255 - out[2], m); + out += n; + } + } else { // YCbCr + alpha? Ignore the fourth channel for + // now + z->YCbCr_to_RGB_kernel(out, y, coutput[1], coutput[2], z->s->img_x, n); + } + } else + for (i = 0; i < z->s->img_x; ++i) { + out[0] = out[1] = out[2] = y[i]; + out[3] = 255; // not used if n==3 + out += n; + } + } else { + if (is_rgb) { + if (n == 1) + for (i = 0; i < z->s->img_x; ++i) + *out++ = stbi__compute_y(coutput[0][i], coutput[1][i], coutput[2][i]); + else { + for (i = 0; i < z->s->img_x; ++i, out += 2) { + out[0] = stbi__compute_y(coutput[0][i], coutput[1][i], coutput[2][i]); + out[1] = 255; + } + } + } else if (z->s->img_n == 4 && z->app14_color_transform == 0) { + for (i = 0; i < z->s->img_x; ++i) { + stbi_uc m = coutput[3][i]; + stbi_uc r = stbi__blinn_8x8(coutput[0][i], m); + stbi_uc g = stbi__blinn_8x8(coutput[1][i], m); + stbi_uc b = stbi__blinn_8x8(coutput[2][i], m); + out[0] = stbi__compute_y(r, g, b); + out[1] = 255; + out += n; + } + } else if (z->s->img_n == 4 && z->app14_color_transform == 2) { + for (i = 0; i < z->s->img_x; ++i) { + out[0] = stbi__blinn_8x8(255 - coutput[0][i], coutput[3][i]); + out[1] = 255; + out += n; + } + } else { + stbi_uc *y = coutput[0]; + if (n == 1) + for (i = 0; i < z->s->img_x; ++i) out[i] = y[i]; + else + for (i = 0; i < z->s->img_x; ++i) { + *out++ = y[i]; + *out++ = 255; + } + } + } + } + stbi__cleanup_jpeg(z); + *out_x = z->s->img_x; + *out_y = z->s->img_y; + if (comp) *comp = z->s->img_n >= 3 ? 3 : 1; // report original components, not output + return output; + } +} + +static void *stbi__jpeg_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, + stbi__result_info *ri) { + unsigned char *result; + stbi__jpeg *j = (stbi__jpeg *)stbi__malloc(sizeof(stbi__jpeg)); + if (!j) return stbi__errpuc("outofmem", "Out of memory"); + memset(j, 0, sizeof(stbi__jpeg)); + STBI_NOTUSED(ri); + j->s = s; + stbi__setup_jpeg(j); + result = load_jpeg_image(j, x, y, comp, req_comp); + STBI_FREE(j); + return result; +} + +static int stbi__jpeg_test(stbi__context *s) { + int r; + stbi__jpeg *j = (stbi__jpeg *)stbi__malloc(sizeof(stbi__jpeg)); + if (!j) return stbi__err("outofmem", "Out of memory"); + memset(j, 0, sizeof(stbi__jpeg)); + j->s = s; + stbi__setup_jpeg(j); + r = stbi__decode_jpeg_header(j, STBI__SCAN_type); + stbi__rewind(s); + STBI_FREE(j); + return r; +} + +static int stbi__jpeg_info_raw(stbi__jpeg *j, int *x, int *y, int *comp) { + if (!stbi__decode_jpeg_header(j, STBI__SCAN_header)) { + stbi__rewind(j->s); + return 0; + } + if (x) *x = j->s->img_x; + if (y) *y = j->s->img_y; + if (comp) *comp = j->s->img_n >= 3 ? 3 : 1; + return 1; +} + +static int stbi__jpeg_info(stbi__context *s, int *x, int *y, int *comp) { + int result; + stbi__jpeg *j = (stbi__jpeg *)(stbi__malloc(sizeof(stbi__jpeg))); + if (!j) return stbi__err("outofmem", "Out of memory"); + memset(j, 0, sizeof(stbi__jpeg)); + j->s = s; + result = stbi__jpeg_info_raw(j, x, y, comp); + STBI_FREE(j); + return result; +} +#endif + +// public domain zlib decode v0.2 Sean Barrett 2006-11-18 +// simple implementation +// - all input must be provided in an upfront buffer +// - all output is written to a single output buffer (can malloc/realloc) +// performance +// - fast huffman + +#ifndef STBI_NO_ZLIB + +// fast-way is faster to check than jpeg huffman, but slow way is slower +#define STBI__ZFAST_BITS 9 // accelerate all cases in default tables +#define STBI__ZFAST_MASK ((1 << STBI__ZFAST_BITS) - 1) +#define STBI__ZNSYMS 288 // number of symbols in literal/length alphabet + +// zlib-style huffman encoding +// (jpegs packs from left, zlib from right, so can't share code) +typedef struct { + stbi__uint16 fast[1 << STBI__ZFAST_BITS]; + stbi__uint16 firstcode[16]; + int maxcode[17]; + stbi__uint16 firstsymbol[16]; + stbi_uc size[STBI__ZNSYMS]; + stbi__uint16 value[STBI__ZNSYMS]; +} stbi__zhuffman; + +stbi_inline static int stbi__bitreverse16(int n) { + n = ((n & 0xAAAA) >> 1) | ((n & 0x5555) << 1); + n = ((n & 0xCCCC) >> 2) | ((n & 0x3333) << 2); + n = ((n & 0xF0F0) >> 4) | ((n & 0x0F0F) << 4); + n = ((n & 0xFF00) >> 8) | ((n & 0x00FF) << 8); + return n; +} + +stbi_inline static int stbi__bit_reverse(int v, int bits) { + STBI_ASSERT(bits <= 16); + // to bit reverse n bits, reverse 16 and shift + // e.g. 11 bits, bit reverse and shift away 5 + return stbi__bitreverse16(v) >> (16 - bits); +} + +static int stbi__zbuild_huffman(stbi__zhuffman *z, const stbi_uc *sizelist, int num) { + int i, k = 0; + int code, next_code[16], sizes[17]; + + // DEFLATE spec for generating codes + memset(sizes, 0, sizeof(sizes)); + memset(z->fast, 0, sizeof(z->fast)); + for (i = 0; i < num; ++i) ++sizes[sizelist[i]]; + sizes[0] = 0; + for (i = 1; i < 16; ++i) + if (sizes[i] > (1 << i)) return stbi__err("bad sizes", "Corrupt PNG"); + code = 0; + for (i = 1; i < 16; ++i) { + next_code[i] = code; + z->firstcode[i] = (stbi__uint16)code; + z->firstsymbol[i] = (stbi__uint16)k; + code = (code + sizes[i]); + if (sizes[i]) + if (code - 1 >= (1 << i)) return stbi__err("bad codelengths", "Corrupt PNG"); + z->maxcode[i] = code << (16 - i); // preshift for inner loop + code <<= 1; + k += sizes[i]; + } + z->maxcode[16] = 0x10000; // sentinel + for (i = 0; i < num; ++i) { + int s = sizelist[i]; + if (s) { + int c = next_code[s] - z->firstcode[s] + z->firstsymbol[s]; + stbi__uint16 fastv = (stbi__uint16)((s << 9) | i); + z->size[c] = (stbi_uc)s; + z->value[c] = (stbi__uint16)i; + if (s <= STBI__ZFAST_BITS) { + int j = stbi__bit_reverse(next_code[s], s); + while (j < (1 << STBI__ZFAST_BITS)) { + z->fast[j] = fastv; + j += (1 << s); + } + } + ++next_code[s]; + } + } + return 1; +} + +// zlib-from-memory implementation for PNG reading +// because PNG allows splitting the zlib stream arbitrarily, +// and it's annoying structurally to have PNG call ZLIB call PNG, +// we require PNG read all the IDATs and combine them into a single +// memory buffer + +typedef struct { + stbi_uc *zbuffer, *zbuffer_end; + int num_bits; + int hit_zeof_once; + stbi__uint32 code_buffer; + + char *zout; + char *zout_start; + char *zout_end; + int z_expandable; + + stbi__zhuffman z_length, z_distance; +} stbi__zbuf; + +stbi_inline static int stbi__zeof(stbi__zbuf *z) { return (z->zbuffer >= z->zbuffer_end); } + +stbi_inline static stbi_uc stbi__zget8(stbi__zbuf *z) { return stbi__zeof(z) ? 0 : *z->zbuffer++; } + +static void stbi__fill_bits(stbi__zbuf *z) { + do { + if (z->code_buffer >= (1U << z->num_bits)) { + z->zbuffer = z->zbuffer_end; /* treat this as EOF so we fail. */ + return; + } + z->code_buffer |= (unsigned int)stbi__zget8(z) << z->num_bits; + z->num_bits += 8; + } while (z->num_bits <= 24); +} + +stbi_inline static unsigned int stbi__zreceive(stbi__zbuf *z, int n) { + unsigned int k; + if (z->num_bits < n) stbi__fill_bits(z); + k = z->code_buffer & ((1 << n) - 1); + z->code_buffer >>= n; + z->num_bits -= n; + return k; +} + +static int stbi__zhuffman_decode_slowpath(stbi__zbuf *a, stbi__zhuffman *z) { + int b, s, k; + // not resolved by fast table, so compute it the slow way + // use jpeg approach, which requires MSbits at top + k = stbi__bit_reverse(a->code_buffer, 16); + for (s = STBI__ZFAST_BITS + 1;; ++s) + if (k < z->maxcode[s]) break; + if (s >= 16) return -1; // invalid code! + // code size is s, so: + b = (k >> (16 - s)) - z->firstcode[s] + z->firstsymbol[s]; + if (b >= STBI__ZNSYMS) return -1; // some data was corrupt somewhere! + if (z->size[b] != s) return -1; // was originally an assert, but report failure instead. + a->code_buffer >>= s; + a->num_bits -= s; + return z->value[b]; +} + +stbi_inline static int stbi__zhuffman_decode(stbi__zbuf *a, stbi__zhuffman *z) { + int b, s; + if (a->num_bits < 16) { + if (stbi__zeof(a)) { + if (!a->hit_zeof_once) { + // This is the first time we hit eof, insert 16 extra padding + // btis to allow us to keep going; if we actually consume any of + // them though, that is invalid data. This is caught later. + a->hit_zeof_once = 1; + a->num_bits += 16; // add 16 implicit zero bits + } else { + // We already inserted our extra 16 padding bits and are again + // out, this stream is actually prematurely terminated. + return -1; + } + } else { + stbi__fill_bits(a); + } + } + b = z->fast[a->code_buffer & STBI__ZFAST_MASK]; + if (b) { + s = b >> 9; + a->code_buffer >>= s; + a->num_bits -= s; + return b & 511; + } + return stbi__zhuffman_decode_slowpath(a, z); +} + +static int stbi__zexpand(stbi__zbuf *z, char *zout, + int n) // need to make room for n bytes +{ + char *q; + unsigned int cur, limit, old_limit; + z->zout = zout; + if (!z->z_expandable) return stbi__err("output buffer limit", "Corrupt PNG"); + cur = (unsigned int)(z->zout - z->zout_start); + limit = old_limit = (unsigned)(z->zout_end - z->zout_start); + if (UINT_MAX - cur < (unsigned)n) return stbi__err("outofmem", "Out of memory"); + while (cur + n > limit) { + if (limit > UINT_MAX / 2) return stbi__err("outofmem", "Out of memory"); + limit *= 2; + } + q = (char *)STBI_REALLOC_SIZED(z->zout_start, old_limit, limit); + STBI_NOTUSED(old_limit); + if (q == NULL) return stbi__err("outofmem", "Out of memory"); + z->zout_start = q; + z->zout = q + cur; + z->zout_end = q + limit; + return 1; +} + +static const int stbi__zlength_base[31] = {3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, + 17, 19, 23, 27, 31, 35, 43, 51, 59, 67, 83, + 99, 115, 131, 163, 195, 227, 258, 0, 0}; + +static const int stbi__zlength_extra[31] = {0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, + 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 0, 0, 0}; + +static const int stbi__zdist_base[32] = { + 1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193, + 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145, 8193, 12289, 16385, 24577, 0, 0}; + +static const int stbi__zdist_extra[32] = {0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, + 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 13, 13}; + +static int stbi__parse_huffman_block(stbi__zbuf *a) { + char *zout = a->zout; + for (;;) { + int z = stbi__zhuffman_decode(a, &a->z_length); + if (z < 256) { + if (z < 0) + return stbi__err("bad huffman code", + "Corrupt PNG"); // error in huffman codes + if (zout >= a->zout_end) { + if (!stbi__zexpand(a, zout, 1)) return 0; + zout = a->zout; + } + *zout++ = (char)z; + } else { + stbi_uc *p; + int len, dist; + if (z == 256) { + a->zout = zout; + if (a->hit_zeof_once && a->num_bits < 16) { + // The first time we hit zeof, we inserted 16 extra zero + // bits into our bit buffer so the decoder can just do its + // speculative decoding. But if we actually consumed any of + // those bits (which is the case when num_bits < 16), the + // stream actually read past the end so it is malformed. + return stbi__err("unexpected end", "Corrupt PNG"); + } + return 1; + } + if (z >= 286) + return stbi__err("bad huffman code", + "Corrupt PNG"); // per DEFLATE, length codes 286 and 287 + // must not appear in compressed data + z -= 257; + len = stbi__zlength_base[z]; + if (stbi__zlength_extra[z]) len += stbi__zreceive(a, stbi__zlength_extra[z]); + z = stbi__zhuffman_decode(a, &a->z_distance); + if (z < 0 || z >= 30) + return stbi__err("bad huffman code", + "Corrupt PNG"); // per DEFLATE, distance codes 30 and 31 + // must not appear in compressed data + dist = stbi__zdist_base[z]; + if (stbi__zdist_extra[z]) dist += stbi__zreceive(a, stbi__zdist_extra[z]); + if (zout - a->zout_start < dist) return stbi__err("bad dist", "Corrupt PNG"); + if (len > a->zout_end - zout) { + if (!stbi__zexpand(a, zout, len)) return 0; + zout = a->zout; + } + p = (stbi_uc *)(zout - dist); + if (dist == 1) { // run of one byte; common in images. + stbi_uc v = *p; + if (len) { + do *zout++ = v; + while (--len); + } + } else { + if (len) { + do *zout++ = *p++; + while (--len); + } + } + } + } +} + +static int stbi__compute_huffman_codes(stbi__zbuf *a) { + static const stbi_uc length_dezigzag[19] = {16, 17, 18, 0, 8, 7, 9, 6, 10, 5, + 11, 4, 12, 3, 13, 2, 14, 1, 15}; + stbi__zhuffman z_codelength; + stbi_uc lencodes[286 + 32 + 137]; // padding for maximum single op + stbi_uc codelength_sizes[19]; + int i, n; + + int hlit = stbi__zreceive(a, 5) + 257; + int hdist = stbi__zreceive(a, 5) + 1; + int hclen = stbi__zreceive(a, 4) + 4; + int ntot = hlit + hdist; + + memset(codelength_sizes, 0, sizeof(codelength_sizes)); + for (i = 0; i < hclen; ++i) { + int s = stbi__zreceive(a, 3); + codelength_sizes[length_dezigzag[i]] = (stbi_uc)s; + } + if (!stbi__zbuild_huffman(&z_codelength, codelength_sizes, 19)) return 0; + + n = 0; + while (n < ntot) { + int c = stbi__zhuffman_decode(a, &z_codelength); + if (c < 0 || c >= 19) return stbi__err("bad codelengths", "Corrupt PNG"); + if (c < 16) + lencodes[n++] = (stbi_uc)c; + else { + stbi_uc fill = 0; + if (c == 16) { + c = stbi__zreceive(a, 2) + 3; + if (n == 0) return stbi__err("bad codelengths", "Corrupt PNG"); + fill = lencodes[n - 1]; + } else if (c == 17) { + c = stbi__zreceive(a, 3) + 3; + } else if (c == 18) { + c = stbi__zreceive(a, 7) + 11; + } else { + return stbi__err("bad codelengths", "Corrupt PNG"); + } + if (ntot - n < c) return stbi__err("bad codelengths", "Corrupt PNG"); + memset(lencodes + n, fill, c); + n += c; + } + } + if (n != ntot) return stbi__err("bad codelengths", "Corrupt PNG"); + if (!stbi__zbuild_huffman(&a->z_length, lencodes, hlit)) return 0; + if (!stbi__zbuild_huffman(&a->z_distance, lencodes + hlit, hdist)) return 0; + return 1; +} + +static int stbi__parse_uncompressed_block(stbi__zbuf *a) { + stbi_uc header[4]; + int len, nlen, k; + if (a->num_bits & 7) stbi__zreceive(a, a->num_bits & 7); // discard + // drain the bit-packed data into header + k = 0; + while (a->num_bits > 0) { + header[k++] = (stbi_uc)(a->code_buffer & 255); // suppress MSVC run-time check + a->code_buffer >>= 8; + a->num_bits -= 8; + } + if (a->num_bits < 0) return stbi__err("zlib corrupt", "Corrupt PNG"); + // now fill header the normal way + while (k < 4) header[k++] = stbi__zget8(a); + len = header[1] * 256 + header[0]; + nlen = header[3] * 256 + header[2]; + if (nlen != (len ^ 0xffff)) return stbi__err("zlib corrupt", "Corrupt PNG"); + if (a->zbuffer + len > a->zbuffer_end) return stbi__err("read past buffer", "Corrupt PNG"); + if (a->zout + len > a->zout_end) + if (!stbi__zexpand(a, a->zout, len)) return 0; + memcpy(a->zout, a->zbuffer, len); + a->zbuffer += len; + a->zout += len; + return 1; +} + +static int stbi__parse_zlib_header(stbi__zbuf *a) { + int cmf = stbi__zget8(a); + int cm = cmf & 15; + /* int cinfo = cmf >> 4; */ + int flg = stbi__zget8(a); + if (stbi__zeof(a)) return stbi__err("bad zlib header", "Corrupt PNG"); // zlib spec + if ((cmf * 256 + flg) % 31 != 0) + return stbi__err("bad zlib header", "Corrupt PNG"); // zlib spec + if (flg & 32) + return stbi__err("no preset dict", + "Corrupt PNG"); // preset dictionary not allowed in png + if (cm != 8) return stbi__err("bad compression", + "Corrupt PNG"); // DEFLATE required for png + // window = 1 << (8 + cinfo)... but who cares, we fully buffer output + return 1; +} + +static const stbi_uc stbi__zdefault_length[STBI__ZNSYMS] = { + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, + 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, + 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, + 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, + 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8}; +static const stbi_uc stbi__zdefault_distance[32] = {5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, + 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5}; +/* +Init algorithm: +{ + int i; // use <= to match clearly with spec + for (i=0; i <= 143; ++i) stbi__zdefault_length[i] = 8; + for ( ; i <= 255; ++i) stbi__zdefault_length[i] = 9; + for ( ; i <= 279; ++i) stbi__zdefault_length[i] = 7; + for ( ; i <= 287; ++i) stbi__zdefault_length[i] = 8; + + for (i=0; i <= 31; ++i) stbi__zdefault_distance[i] = 5; +} +*/ + +static int stbi__parse_zlib(stbi__zbuf *a, int parse_header) { + int final, type; + if (parse_header) + if (!stbi__parse_zlib_header(a)) return 0; + a->num_bits = 0; + a->code_buffer = 0; + a->hit_zeof_once = 0; + do { + final = stbi__zreceive(a, 1); + type = stbi__zreceive(a, 2); + if (type == 0) { + if (!stbi__parse_uncompressed_block(a)) return 0; + } else if (type == 3) { + return 0; + } else { + if (type == 1) { + // use fixed code lengths + if (!stbi__zbuild_huffman(&a->z_length, stbi__zdefault_length, STBI__ZNSYMS)) + return 0; + if (!stbi__zbuild_huffman(&a->z_distance, stbi__zdefault_distance, 32)) return 0; + } else { + if (!stbi__compute_huffman_codes(a)) return 0; + } + if (!stbi__parse_huffman_block(a)) return 0; + } + } while (!final); + return 1; +} + +static int stbi__do_zlib(stbi__zbuf *a, char *obuf, int olen, int exp, int parse_header) { + a->zout_start = obuf; + a->zout = obuf; + a->zout_end = obuf + olen; + a->z_expandable = exp; + + return stbi__parse_zlib(a, parse_header); +} + +STBIDEF char *stbi_zlib_decode_malloc_guesssize(const char *buffer, int len, int initial_size, + int *outlen) { + stbi__zbuf a; + char *p = (char *)stbi__malloc(initial_size); + if (p == NULL) return NULL; + a.zbuffer = (stbi_uc *)buffer; + a.zbuffer_end = (stbi_uc *)buffer + len; + if (stbi__do_zlib(&a, p, initial_size, 1, 1)) { + if (outlen) *outlen = (int)(a.zout - a.zout_start); + return a.zout_start; + } else { + STBI_FREE(a.zout_start); + return NULL; + } +} + +STBIDEF char *stbi_zlib_decode_malloc(char const *buffer, int len, int *outlen) { + return stbi_zlib_decode_malloc_guesssize(buffer, len, 16384, outlen); +} + +STBIDEF char *stbi_zlib_decode_malloc_guesssize_headerflag(const char *buffer, int len, + int initial_size, int *outlen, + int parse_header) { + stbi__zbuf a; + char *p = (char *)stbi__malloc(initial_size); + if (p == NULL) return NULL; + a.zbuffer = (stbi_uc *)buffer; + a.zbuffer_end = (stbi_uc *)buffer + len; + if (stbi__do_zlib(&a, p, initial_size, 1, parse_header)) { + if (outlen) *outlen = (int)(a.zout - a.zout_start); + return a.zout_start; + } else { + STBI_FREE(a.zout_start); + return NULL; + } +} + +STBIDEF int stbi_zlib_decode_buffer(char *obuffer, int olen, char const *ibuffer, int ilen) { + stbi__zbuf a; + a.zbuffer = (stbi_uc *)ibuffer; + a.zbuffer_end = (stbi_uc *)ibuffer + ilen; + if (stbi__do_zlib(&a, obuffer, olen, 0, 1)) + return (int)(a.zout - a.zout_start); + else + return -1; +} + +STBIDEF char *stbi_zlib_decode_noheader_malloc(char const *buffer, int len, int *outlen) { + stbi__zbuf a; + char *p = (char *)stbi__malloc(16384); + if (p == NULL) return NULL; + a.zbuffer = (stbi_uc *)buffer; + a.zbuffer_end = (stbi_uc *)buffer + len; + if (stbi__do_zlib(&a, p, 16384, 1, 0)) { + if (outlen) *outlen = (int)(a.zout - a.zout_start); + return a.zout_start; + } else { + STBI_FREE(a.zout_start); + return NULL; + } +} + +STBIDEF int stbi_zlib_decode_noheader_buffer(char *obuffer, int olen, const char *ibuffer, + int ilen) { + stbi__zbuf a; + a.zbuffer = (stbi_uc *)ibuffer; + a.zbuffer_end = (stbi_uc *)ibuffer + ilen; + if (stbi__do_zlib(&a, obuffer, olen, 0, 0)) + return (int)(a.zout - a.zout_start); + else + return -1; +} +#endif + +// public domain "baseline" PNG decoder v0.10 Sean Barrett 2006-11-18 +// simple implementation +// - only 8-bit samples +// - no CRC checking +// - allocates lots of intermediate memory +// - avoids problem of streaming data between subsystems +// - avoids explicit window management +// performance +// - uses stb_zlib, a PD zlib implementation with fast huffman decoding + +#ifndef STBI_NO_PNG +typedef struct { + stbi__uint32 length; + stbi__uint32 type; +} stbi__pngchunk; + +static stbi__pngchunk stbi__get_chunk_header(stbi__context *s) { + stbi__pngchunk c; + c.length = stbi__get32be(s); + c.type = stbi__get32be(s); + return c; +} + +static int stbi__check_png_header(stbi__context *s) { + static const stbi_uc png_sig[8] = {137, 80, 78, 71, 13, 10, 26, 10}; + int i; + for (i = 0; i < 8; ++i) + if (stbi__get8(s) != png_sig[i]) return stbi__err("bad png sig", "Not a PNG"); + return 1; +} + +typedef struct { + stbi__context *s; + stbi_uc *idata, *expanded, *out; + int depth; +} stbi__png; + +enum { + STBI__F_none = 0, + STBI__F_sub = 1, + STBI__F_up = 2, + STBI__F_avg = 3, + STBI__F_paeth = 4, + // synthetic filter used for first scanline to avoid needing a dummy row of + // 0s + STBI__F_avg_first +}; + +static stbi_uc first_row_filter[5] = { + STBI__F_none, STBI__F_sub, STBI__F_none, STBI__F_avg_first, + STBI__F_sub // Paeth with b=c=0 turns out to be equivalent to sub +}; + +static int stbi__paeth(int a, int b, int c) { + // This formulation looks very different from the reference in the PNG spec, + // but is actually equivalent and has favorable data dependencies and admits + // straightforward generation of branch-free code, which helps performance + // significantly. + int thresh = c * 3 - (a + b); + int lo = a < b ? a : b; + int hi = a < b ? b : a; + int t0 = (hi <= thresh) ? lo : c; + int t1 = (thresh <= lo) ? hi : t0; + return t1; +} + +static const stbi_uc stbi__depth_scale_table[9] = {0, 0xff, 0x55, 0, 0x11, 0, 0, 0, 0x01}; + +// adds an extra all-255 alpha channel +// dest == src is legal +// img_n must be 1 or 3 +static void stbi__create_png_alpha_expand8(stbi_uc *dest, stbi_uc *src, stbi__uint32 x, int img_n) { + int i; + // must process data backwards since we allow dest==src + if (img_n == 1) { + for (i = x - 1; i >= 0; --i) { + dest[i * 2 + 1] = 255; + dest[i * 2 + 0] = src[i]; + } + } else { + STBI_ASSERT(img_n == 3); + for (i = x - 1; i >= 0; --i) { + dest[i * 4 + 3] = 255; + dest[i * 4 + 2] = src[i * 3 + 2]; + dest[i * 4 + 1] = src[i * 3 + 1]; + dest[i * 4 + 0] = src[i * 3 + 0]; + } + } +} + +// create the png data from post-deflated data +static int stbi__create_png_image_raw(stbi__png *a, stbi_uc *raw, stbi__uint32 raw_len, int out_n, + stbi__uint32 x, stbi__uint32 y, int depth, int color) { + int bytes = (depth == 16 ? 2 : 1); + stbi__context *s = a->s; + stbi__uint32 i, j, stride = x * out_n * bytes; + stbi__uint32 img_len, img_width_bytes; + stbi_uc *filter_buf; + int all_ok = 1; + int k; + int img_n = s->img_n; // copy it into a local for later + + int output_bytes = out_n * bytes; + int filter_bytes = img_n * bytes; + int width = x; + + STBI_ASSERT(out_n == s->img_n || out_n == s->img_n + 1); + a->out = (stbi_uc *)stbi__malloc_mad3(x, y, output_bytes, + 0); // extra bytes to write off the end into + if (!a->out) return stbi__err("outofmem", "Out of memory"); + + // note: error exits here don't need to clean up a->out individually, + // stbi__do_png always does on error. + if (!stbi__mad3sizes_valid(img_n, x, depth, 7)) return stbi__err("too large", "Corrupt PNG"); + img_width_bytes = (((img_n * x * depth) + 7) >> 3); + if (!stbi__mad2sizes_valid(img_width_bytes, y, img_width_bytes)) + return stbi__err("too large", "Corrupt PNG"); + img_len = (img_width_bytes + 1) * y; + + // we used to check for exact match between raw_len and img_len on + // non-interlaced PNGs, but issue #276 reported a PNG in the wild that had + // extra data at the end (all zeros), so just check for raw_len < img_len + // always. + if (raw_len < img_len) return stbi__err("not enough pixels", "Corrupt PNG"); + + // Allocate two scan lines worth of filter workspace buffer. + filter_buf = (stbi_uc *)stbi__malloc_mad2(img_width_bytes, 2, 0); + if (!filter_buf) return stbi__err("outofmem", "Out of memory"); + + // Filtering for low-bit-depth images + if (depth < 8) { + filter_bytes = 1; + width = img_width_bytes; + } + + for (j = 0; j < y; ++j) { + // cur/prior filter buffers alternate + stbi_uc *cur = filter_buf + (j & 1) * img_width_bytes; + stbi_uc *prior = filter_buf + (~j & 1) * img_width_bytes; + stbi_uc *dest = a->out + stride * j; + int nk = width * filter_bytes; + int filter = *raw++; + + // check filter type + if (filter > 4) { + all_ok = stbi__err("invalid filter", "Corrupt PNG"); + break; + } + + // if first row, use special filter that doesn't sample previous row + if (j == 0) filter = first_row_filter[filter]; + + // perform actual filtering + switch (filter) { + case STBI__F_none: + memcpy(cur, raw, nk); + break; + case STBI__F_sub: + memcpy(cur, raw, filter_bytes); + for (k = filter_bytes; k < nk; ++k) + cur[k] = STBI__BYTECAST(raw[k] + cur[k - filter_bytes]); + break; + case STBI__F_up: + for (k = 0; k < nk; ++k) cur[k] = STBI__BYTECAST(raw[k] + prior[k]); + break; + case STBI__F_avg: + for (k = 0; k < filter_bytes; ++k) cur[k] = STBI__BYTECAST(raw[k] + (prior[k] >> 1)); + for (k = filter_bytes; k < nk; ++k) + cur[k] = STBI__BYTECAST(raw[k] + ((prior[k] + cur[k - filter_bytes]) >> 1)); + break; + case STBI__F_paeth: + for (k = 0; k < filter_bytes; ++k) + cur[k] = STBI__BYTECAST(raw[k] + prior[k]); // prior[k] == stbi__paeth(0,prior[k],0) + for (k = filter_bytes; k < nk; ++k) + cur[k] = STBI__BYTECAST( + raw[k] + stbi__paeth(cur[k - filter_bytes], prior[k], prior[k - filter_bytes])); + break; + case STBI__F_avg_first: + memcpy(cur, raw, filter_bytes); + for (k = filter_bytes; k < nk; ++k) + cur[k] = STBI__BYTECAST(raw[k] + (cur[k - filter_bytes] >> 1)); + break; + } + + raw += nk; + + // expand decoded bits in cur to dest, also adding an extra alpha + // channel if desired + if (depth < 8) { + stbi_uc scale = (color == 0) ? stbi__depth_scale_table[depth] + : 1; // scale grayscale values to 0..255 range + stbi_uc *in = cur; + stbi_uc *out = dest; + stbi_uc inb = 0; + stbi__uint32 nsmp = x * img_n; + + // expand bits to bytes first + if (depth == 4) { + for (i = 0; i < nsmp; ++i) { + if ((i & 1) == 0) inb = *in++; + *out++ = scale * (inb >> 4); + inb <<= 4; + } + } else if (depth == 2) { + for (i = 0; i < nsmp; ++i) { + if ((i & 3) == 0) inb = *in++; + *out++ = scale * (inb >> 6); + inb <<= 2; + } + } else { + STBI_ASSERT(depth == 1); + for (i = 0; i < nsmp; ++i) { + if ((i & 7) == 0) inb = *in++; + *out++ = scale * (inb >> 7); + inb <<= 1; + } + } + + // insert alpha=255 values if desired + if (img_n != out_n) stbi__create_png_alpha_expand8(dest, dest, x, img_n); + } else if (depth == 8) { + if (img_n == out_n) + memcpy(dest, cur, x * img_n); + else + stbi__create_png_alpha_expand8(dest, cur, x, img_n); + } else if (depth == 16) { + // convert the image data from big-endian to platform-native + stbi__uint16 *dest16 = (stbi__uint16 *)dest; + stbi__uint32 nsmp = x * img_n; + + if (img_n == out_n) { + for (i = 0; i < nsmp; ++i, ++dest16, cur += 2) *dest16 = (cur[0] << 8) | cur[1]; + } else { + STBI_ASSERT(img_n + 1 == out_n); + if (img_n == 1) { + for (i = 0; i < x; ++i, dest16 += 2, cur += 2) { + dest16[0] = (cur[0] << 8) | cur[1]; + dest16[1] = 0xffff; + } + } else { + STBI_ASSERT(img_n == 3); + for (i = 0; i < x; ++i, dest16 += 4, cur += 6) { + dest16[0] = (cur[0] << 8) | cur[1]; + dest16[1] = (cur[2] << 8) | cur[3]; + dest16[2] = (cur[4] << 8) | cur[5]; + dest16[3] = 0xffff; + } + } + } + } + } + + STBI_FREE(filter_buf); + if (!all_ok) return 0; + + return 1; +} + +static int stbi__create_png_image(stbi__png *a, stbi_uc *image_data, stbi__uint32 image_data_len, + int out_n, int depth, int color, int interlaced) { + int bytes = (depth == 16 ? 2 : 1); + int out_bytes = out_n * bytes; + stbi_uc *final; + int p; + if (!interlaced) + return stbi__create_png_image_raw(a, image_data, image_data_len, out_n, a->s->img_x, + a->s->img_y, depth, color); + + // de-interlacing + final = (stbi_uc *)stbi__malloc_mad3(a->s->img_x, a->s->img_y, out_bytes, 0); + if (!final) return stbi__err("outofmem", "Out of memory"); + for (p = 0; p < 7; ++p) { + int xorig[] = {0, 4, 0, 2, 0, 1, 0}; + int yorig[] = {0, 0, 4, 0, 2, 0, 1}; + int xspc[] = {8, 8, 4, 4, 2, 2, 1}; + int yspc[] = {8, 8, 8, 4, 4, 2, 2}; + int i, j, x, y; + // pass1_x[4] = 0, pass1_x[5] = 1, pass1_x[12] = 1 + x = (a->s->img_x - xorig[p] + xspc[p] - 1) / xspc[p]; + y = (a->s->img_y - yorig[p] + yspc[p] - 1) / yspc[p]; + if (x && y) { + stbi__uint32 img_len = ((((a->s->img_n * x * depth) + 7) >> 3) + 1) * y; + if (!stbi__create_png_image_raw(a, image_data, image_data_len, out_n, x, y, depth, + color)) { + STBI_FREE(final); + return 0; + } + for (j = 0; j < y; ++j) { + for (i = 0; i < x; ++i) { + int out_y = j * yspc[p] + yorig[p]; + int out_x = i * xspc[p] + xorig[p]; + memcpy(final + out_y * a->s->img_x * out_bytes + out_x * out_bytes, + a->out + (j * x + i) * out_bytes, out_bytes); + } + } + STBI_FREE(a->out); + image_data += img_len; + image_data_len -= img_len; + } + } + a->out = final; + + return 1; +} + +static int stbi__compute_transparency(stbi__png *z, stbi_uc tc[3], int out_n) { + stbi__context *s = z->s; + stbi__uint32 i, pixel_count = s->img_x * s->img_y; + stbi_uc *p = z->out; + + // compute color-based transparency, assuming we've + // already got 255 as the alpha value in the output + STBI_ASSERT(out_n == 2 || out_n == 4); + + if (out_n == 2) { + for (i = 0; i < pixel_count; ++i) { + p[1] = (p[0] == tc[0] ? 0 : 255); + p += 2; + } + } else { + for (i = 0; i < pixel_count; ++i) { + if (p[0] == tc[0] && p[1] == tc[1] && p[2] == tc[2]) p[3] = 0; + p += 4; + } + } + return 1; +} + +static int stbi__compute_transparency16(stbi__png *z, stbi__uint16 tc[3], int out_n) { + stbi__context *s = z->s; + stbi__uint32 i, pixel_count = s->img_x * s->img_y; + stbi__uint16 *p = (stbi__uint16 *)z->out; + + // compute color-based transparency, assuming we've + // already got 65535 as the alpha value in the output + STBI_ASSERT(out_n == 2 || out_n == 4); + + if (out_n == 2) { + for (i = 0; i < pixel_count; ++i) { + p[1] = (p[0] == tc[0] ? 0 : 65535); + p += 2; + } + } else { + for (i = 0; i < pixel_count; ++i) { + if (p[0] == tc[0] && p[1] == tc[1] && p[2] == tc[2]) p[3] = 0; + p += 4; + } + } + return 1; +} + +static int stbi__expand_png_palette(stbi__png *a, stbi_uc *palette, int len, int pal_img_n) { + stbi__uint32 i, pixel_count = a->s->img_x * a->s->img_y; + stbi_uc *p, *temp_out, *orig = a->out; + + p = (stbi_uc *)stbi__malloc_mad2(pixel_count, pal_img_n, 0); + if (p == NULL) return stbi__err("outofmem", "Out of memory"); + + // between here and free(out) below, exitting would leak + temp_out = p; + + if (pal_img_n == 3) { + for (i = 0; i < pixel_count; ++i) { + int n = orig[i] * 4; + p[0] = palette[n]; + p[1] = palette[n + 1]; + p[2] = palette[n + 2]; + p += 3; + } + } else { + for (i = 0; i < pixel_count; ++i) { + int n = orig[i] * 4; + p[0] = palette[n]; + p[1] = palette[n + 1]; + p[2] = palette[n + 2]; + p[3] = palette[n + 3]; + p += 4; + } + } + STBI_FREE(a->out); + a->out = temp_out; + + STBI_NOTUSED(len); + + return 1; +} + +static int stbi__unpremultiply_on_load_global = 0; +static int stbi__de_iphone_flag_global = 0; + +STBIDEF void stbi_set_unpremultiply_on_load(int flag_true_if_should_unpremultiply) { + stbi__unpremultiply_on_load_global = flag_true_if_should_unpremultiply; +} + +STBIDEF void stbi_convert_iphone_png_to_rgb(int flag_true_if_should_convert) { + stbi__de_iphone_flag_global = flag_true_if_should_convert; +} + +#ifndef STBI_THREAD_LOCAL +#define stbi__unpremultiply_on_load stbi__unpremultiply_on_load_global +#define stbi__de_iphone_flag stbi__de_iphone_flag_global +#else +static STBI_THREAD_LOCAL int stbi__unpremultiply_on_load_local, stbi__unpremultiply_on_load_set; +static STBI_THREAD_LOCAL int stbi__de_iphone_flag_local, stbi__de_iphone_flag_set; + +STBIDEF void stbi_set_unpremultiply_on_load_thread(int flag_true_if_should_unpremultiply) { + stbi__unpremultiply_on_load_local = flag_true_if_should_unpremultiply; + stbi__unpremultiply_on_load_set = 1; +} + +STBIDEF void stbi_convert_iphone_png_to_rgb_thread(int flag_true_if_should_convert) { + stbi__de_iphone_flag_local = flag_true_if_should_convert; + stbi__de_iphone_flag_set = 1; +} + +#define stbi__unpremultiply_on_load \ + (stbi__unpremultiply_on_load_set ? stbi__unpremultiply_on_load_local \ + : stbi__unpremultiply_on_load_global) +#define stbi__de_iphone_flag \ + (stbi__de_iphone_flag_set ? stbi__de_iphone_flag_local : stbi__de_iphone_flag_global) +#endif // STBI_THREAD_LOCAL + +static void stbi__de_iphone(stbi__png *z) { + stbi__context *s = z->s; + stbi__uint32 i, pixel_count = s->img_x * s->img_y; + stbi_uc *p = z->out; + + if (s->img_out_n == 3) { // convert bgr to rgb + for (i = 0; i < pixel_count; ++i) { + stbi_uc t = p[0]; + p[0] = p[2]; + p[2] = t; + p += 3; + } + } else { + STBI_ASSERT(s->img_out_n == 4); + if (stbi__unpremultiply_on_load) { + // convert bgr to rgb and unpremultiply + for (i = 0; i < pixel_count; ++i) { + stbi_uc a = p[3]; + stbi_uc t = p[0]; + if (a) { + stbi_uc half = a / 2; + p[0] = (p[2] * 255 + half) / a; + p[1] = (p[1] * 255 + half) / a; + p[2] = (t * 255 + half) / a; + } else { + p[0] = p[2]; + p[2] = t; + } + p += 4; + } + } else { + // convert bgr to rgb + for (i = 0; i < pixel_count; ++i) { + stbi_uc t = p[0]; + p[0] = p[2]; + p[2] = t; + p += 4; + } + } + } +} + +#define STBI__PNG_TYPE(a, b, c, d) \ + (((unsigned)(a) << 24) + ((unsigned)(b) << 16) + ((unsigned)(c) << 8) + (unsigned)(d)) + +static int stbi__parse_png_file(stbi__png *z, int scan, int req_comp) { + stbi_uc palette[1024], pal_img_n = 0; + stbi_uc has_trans = 0, tc[3] = {0}; + stbi__uint16 tc16[3]; + stbi__uint32 ioff = 0, idata_limit = 0, i, pal_len = 0; + int first = 1, k, interlace = 0, color = 0, is_iphone = 0; + stbi__context *s = z->s; + + z->expanded = NULL; + z->idata = NULL; + z->out = NULL; + + if (!stbi__check_png_header(s)) return 0; + + if (scan == STBI__SCAN_type) return 1; + + for (;;) { + stbi__pngchunk c = stbi__get_chunk_header(s); + switch (c.type) { + case STBI__PNG_TYPE('C', 'g', 'B', 'I'): + is_iphone = 1; + stbi__skip(s, c.length); + break; + case STBI__PNG_TYPE('I', 'H', 'D', 'R'): { + int comp, filter; + if (!first) return stbi__err("multiple IHDR", "Corrupt PNG"); + first = 0; + if (c.length != 13) return stbi__err("bad IHDR len", "Corrupt PNG"); + s->img_x = stbi__get32be(s); + s->img_y = stbi__get32be(s); + if (s->img_y > STBI_MAX_DIMENSIONS) + return stbi__err("too large", "Very large image (corrupt?)"); + if (s->img_x > STBI_MAX_DIMENSIONS) + return stbi__err("too large", "Very large image (corrupt?)"); + z->depth = stbi__get8(s); + if (z->depth != 1 && z->depth != 2 && z->depth != 4 && z->depth != 8 && z->depth != 16) + return stbi__err("1/2/4/8/16-bit only", "PNG not supported: 1/2/4/8/16-bit only"); + color = stbi__get8(s); + if (color > 6) return stbi__err("bad ctype", "Corrupt PNG"); + if (color == 3 && z->depth == 16) return stbi__err("bad ctype", "Corrupt PNG"); + if (color == 3) + pal_img_n = 3; + else if (color & 1) + return stbi__err("bad ctype", "Corrupt PNG"); + comp = stbi__get8(s); + if (comp) return stbi__err("bad comp method", "Corrupt PNG"); + filter = stbi__get8(s); + if (filter) return stbi__err("bad filter method", "Corrupt PNG"); + interlace = stbi__get8(s); + if (interlace > 1) return stbi__err("bad interlace method", "Corrupt PNG"); + if (!s->img_x || !s->img_y) return stbi__err("0-pixel image", "Corrupt PNG"); + if (!pal_img_n) { + s->img_n = (color & 2 ? 3 : 1) + (color & 4 ? 1 : 0); + if ((1 << 30) / s->img_x / s->img_n < s->img_y) + return stbi__err("too large", "Image too large to decode"); + } else { + // if paletted, then pal_n is our final components, and + // img_n is # components to decompress/filter. + s->img_n = 1; + if ((1 << 30) / s->img_x / 4 < s->img_y) + return stbi__err("too large", "Corrupt PNG"); + } + // even with SCAN_header, have to scan to see if we have a tRNS + break; + } + + case STBI__PNG_TYPE('P', 'L', 'T', 'E'): { + if (first) return stbi__err("first not IHDR", "Corrupt PNG"); + if (c.length > 256 * 3) return stbi__err("invalid PLTE", "Corrupt PNG"); + pal_len = c.length / 3; + if (pal_len * 3 != c.length) return stbi__err("invalid PLTE", "Corrupt PNG"); + for (i = 0; i < pal_len; ++i) { + palette[i * 4 + 0] = stbi__get8(s); + palette[i * 4 + 1] = stbi__get8(s); + palette[i * 4 + 2] = stbi__get8(s); + palette[i * 4 + 3] = 255; + } + break; + } + + case STBI__PNG_TYPE('t', 'R', 'N', 'S'): { + if (first) return stbi__err("first not IHDR", "Corrupt PNG"); + if (z->idata) return stbi__err("tRNS after IDAT", "Corrupt PNG"); + if (pal_img_n) { + if (scan == STBI__SCAN_header) { + s->img_n = 4; + return 1; + } + if (pal_len == 0) return stbi__err("tRNS before PLTE", "Corrupt PNG"); + if (c.length > pal_len) return stbi__err("bad tRNS len", "Corrupt PNG"); + pal_img_n = 4; + for (i = 0; i < c.length; ++i) palette[i * 4 + 3] = stbi__get8(s); + } else { + if (!(s->img_n & 1)) return stbi__err("tRNS with alpha", "Corrupt PNG"); + if (c.length != (stbi__uint32)s->img_n * 2) + return stbi__err("bad tRNS len", "Corrupt PNG"); + has_trans = 1; + // non-paletted with tRNS = constant alpha. if header-scanning, + // we can stop now. + if (scan == STBI__SCAN_header) { + ++s->img_n; + return 1; + } + if (z->depth == 16) { + for (k = 0; k < s->img_n && k < 3; + ++k) // extra loop test to suppress false GCC warning + tc16[k] = (stbi__uint16)stbi__get16be(s); // copy the values as-is + } else { + for (k = 0; k < s->img_n && k < 3; ++k) + tc[k] = + (stbi_uc)(stbi__get16be(s) & 255) * + stbi__depth_scale_table[z->depth]; // non 8-bit images will be larger + } + } + break; + } + + case STBI__PNG_TYPE('I', 'D', 'A', 'T'): { + if (first) return stbi__err("first not IHDR", "Corrupt PNG"); + if (pal_img_n && !pal_len) return stbi__err("no PLTE", "Corrupt PNG"); + if (scan == STBI__SCAN_header) { + // header scan definitely stops at first IDAT + if (pal_img_n) s->img_n = pal_img_n; + return 1; + } + if (c.length > (1u << 30)) + return stbi__err("IDAT size limit", "IDAT section larger than 2^30 bytes"); + if ((int)(ioff + c.length) < (int)ioff) return 0; + if (ioff + c.length > idata_limit) { + stbi__uint32 idata_limit_old = idata_limit; + stbi_uc *p; + if (idata_limit == 0) idata_limit = c.length > 4096 ? c.length : 4096; + while (ioff + c.length > idata_limit) idata_limit *= 2; + STBI_NOTUSED(idata_limit_old); + p = (stbi_uc *)STBI_REALLOC_SIZED(z->idata, idata_limit_old, idata_limit); + if (p == NULL) return stbi__err("outofmem", "Out of memory"); + z->idata = p; + } + if (!stbi__getn(s, z->idata + ioff, c.length)) + return stbi__err("outofdata", "Corrupt PNG"); + ioff += c.length; + break; + } + + case STBI__PNG_TYPE('I', 'E', 'N', 'D'): { + stbi__uint32 raw_len, bpl; + if (first) return stbi__err("first not IHDR", "Corrupt PNG"); + if (scan != STBI__SCAN_load) return 1; + if (z->idata == NULL) return stbi__err("no IDAT", "Corrupt PNG"); + // initial guess for decoded data size to avoid unnecessary reallocs + bpl = (s->img_x * z->depth + 7) / 8; // bytes per line, per component + raw_len = bpl * s->img_y * s->img_n /* pixels */ + s->img_y /* filter mode per row */; + z->expanded = (stbi_uc *)stbi_zlib_decode_malloc_guesssize_headerflag( + (char *)z->idata, ioff, raw_len, (int *)&raw_len, !is_iphone); + if (z->expanded == NULL) return 0; // zlib should set error + STBI_FREE(z->idata); + z->idata = NULL; + if ((req_comp == s->img_n + 1 && req_comp != 3 && !pal_img_n) || has_trans) + s->img_out_n = s->img_n + 1; + else + s->img_out_n = s->img_n; + if (!stbi__create_png_image(z, z->expanded, raw_len, s->img_out_n, z->depth, color, + interlace)) + return 0; + if (has_trans) { + if (z->depth == 16) { + if (!stbi__compute_transparency16(z, tc16, s->img_out_n)) return 0; + } else { + if (!stbi__compute_transparency(z, tc, s->img_out_n)) return 0; + } + } + if (is_iphone && stbi__de_iphone_flag && s->img_out_n > 2) stbi__de_iphone(z); + if (pal_img_n) { + // pal_img_n == 3 or 4 + s->img_n = pal_img_n; // record the actual colors we had + s->img_out_n = pal_img_n; + if (req_comp >= 3) s->img_out_n = req_comp; + if (!stbi__expand_png_palette(z, palette, pal_len, s->img_out_n)) return 0; + } else if (has_trans) { + // non-paletted image with tRNS -> source image has (constant) + // alpha + ++s->img_n; + } + STBI_FREE(z->expanded); + z->expanded = NULL; + // end of PNG chunk, read and skip CRC + stbi__get32be(s); + return 1; + } + + default: + // if critical, fail + if (first) return stbi__err("first not IHDR", "Corrupt PNG"); + if ((c.type & (1 << 29)) == 0) { +#ifndef STBI_NO_FAILURE_STRINGS + // not threadsafe + static char invalid_chunk[] = "XXXX PNG chunk not known"; + invalid_chunk[0] = STBI__BYTECAST(c.type >> 24); + invalid_chunk[1] = STBI__BYTECAST(c.type >> 16); + invalid_chunk[2] = STBI__BYTECAST(c.type >> 8); + invalid_chunk[3] = STBI__BYTECAST(c.type >> 0); +#endif + return stbi__err(invalid_chunk, "PNG not supported: unknown PNG chunk type"); + } + stbi__skip(s, c.length); + break; + } + // end of PNG chunk, read and skip CRC + stbi__get32be(s); + } +} + +static void *stbi__do_png(stbi__png *p, int *x, int *y, int *n, int req_comp, + stbi__result_info *ri) { + void *result = NULL; + if (req_comp < 0 || req_comp > 4) return stbi__errpuc("bad req_comp", "Internal error"); + if (stbi__parse_png_file(p, STBI__SCAN_load, req_comp)) { + if (p->depth <= 8) + ri->bits_per_channel = 8; + else if (p->depth == 16) + ri->bits_per_channel = 16; + else + return stbi__errpuc("bad bits_per_channel", + "PNG not supported: unsupported color depth"); + result = p->out; + p->out = NULL; + if (req_comp && req_comp != p->s->img_out_n) { + if (ri->bits_per_channel == 8) + result = stbi__convert_format((unsigned char *)result, p->s->img_out_n, req_comp, + p->s->img_x, p->s->img_y); + else + result = stbi__convert_format16((stbi__uint16 *)result, p->s->img_out_n, req_comp, + p->s->img_x, p->s->img_y); + p->s->img_out_n = req_comp; + if (result == NULL) return result; + } + *x = p->s->img_x; + *y = p->s->img_y; + if (n) *n = p->s->img_n; + } + STBI_FREE(p->out); + p->out = NULL; + STBI_FREE(p->expanded); + p->expanded = NULL; + STBI_FREE(p->idata); + p->idata = NULL; + + return result; +} + +static void *stbi__png_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, + stbi__result_info *ri) { + stbi__png p; + p.s = s; + return stbi__do_png(&p, x, y, comp, req_comp, ri); +} + +static int stbi__png_test(stbi__context *s) { + int r; + r = stbi__check_png_header(s); + stbi__rewind(s); + return r; +} + +static int stbi__png_info_raw(stbi__png *p, int *x, int *y, int *comp) { + if (!stbi__parse_png_file(p, STBI__SCAN_header, 0)) { + stbi__rewind(p->s); + return 0; + } + if (x) *x = p->s->img_x; + if (y) *y = p->s->img_y; + if (comp) *comp = p->s->img_n; + return 1; +} + +static int stbi__png_info(stbi__context *s, int *x, int *y, int *comp) { + stbi__png p; + p.s = s; + return stbi__png_info_raw(&p, x, y, comp); +} + +static int stbi__png_is16(stbi__context *s) { + stbi__png p; + p.s = s; + if (!stbi__png_info_raw(&p, NULL, NULL, NULL)) return 0; + if (p.depth != 16) { + stbi__rewind(p.s); + return 0; + } + return 1; +} +#endif + +// Microsoft/Windows BMP image + +#ifndef STBI_NO_BMP +static int stbi__bmp_test_raw(stbi__context *s) { + int r; + int sz; + if (stbi__get8(s) != 'B') return 0; + if (stbi__get8(s) != 'M') return 0; + stbi__get32le(s); // discard filesize + stbi__get16le(s); // discard reserved + stbi__get16le(s); // discard reserved + stbi__get32le(s); // discard data offset + sz = stbi__get32le(s); + r = (sz == 12 || sz == 40 || sz == 56 || sz == 108 || sz == 124); + return r; +} + +static int stbi__bmp_test(stbi__context *s) { + int r = stbi__bmp_test_raw(s); + stbi__rewind(s); + return r; +} + +// returns 0..31 for the highest set bit +static int stbi__high_bit(unsigned int z) { + int n = 0; + if (z == 0) return -1; + if (z >= 0x10000) { + n += 16; + z >>= 16; + } + if (z >= 0x00100) { + n += 8; + z >>= 8; + } + if (z >= 0x00010) { + n += 4; + z >>= 4; + } + if (z >= 0x00004) { + n += 2; + z >>= 2; + } + if (z >= 0x00002) { + n += 1; /* >>= 1;*/ + } + return n; +} + +static int stbi__bitcount(unsigned int a) { + a = (a & 0x55555555) + ((a >> 1) & 0x55555555); // max 2 + a = (a & 0x33333333) + ((a >> 2) & 0x33333333); // max 4 + a = (a + (a >> 4)) & 0x0f0f0f0f; // max 8 per 4, now 8 bits + a = (a + (a >> 8)); // max 16 per 8 bits + a = (a + (a >> 16)); // max 32 per 8 bits + return a & 0xff; +} + +// extract an arbitrarily-aligned N-bit value (N=bits) +// from v, and then make it 8-bits long and fractionally +// extend it to full full range. +static int stbi__shiftsigned(unsigned int v, int shift, int bits) { + static unsigned int mul_table[9] = { + 0, + 0xff /*0b11111111*/, + 0x55 /*0b01010101*/, + 0x49 /*0b01001001*/, + 0x11 /*0b00010001*/, + 0x21 /*0b00100001*/, + 0x41 /*0b01000001*/, + 0x81 /*0b10000001*/, + 0x01 /*0b00000001*/, + }; + static unsigned int shift_table[9] = { + 0, 0, 0, 1, 0, 2, 4, 6, 0, + }; + if (shift < 0) + v <<= -shift; + else + v >>= shift; + STBI_ASSERT(v < 256); + v >>= (8 - bits); + STBI_ASSERT(bits >= 0 && bits <= 8); + return (int)((unsigned)v * mul_table[bits]) >> shift_table[bits]; +} + +typedef struct { + int bpp, offset, hsz; + unsigned int mr, mg, mb, ma, all_a; + int extra_read; +} stbi__bmp_data; + +static int stbi__bmp_set_mask_defaults(stbi__bmp_data *info, int compress) { + // BI_BITFIELDS specifies masks explicitly, don't override + if (compress == 3) return 1; + + if (compress == 0) { + if (info->bpp == 16) { + info->mr = 31u << 10; + info->mg = 31u << 5; + info->mb = 31u << 0; + } else if (info->bpp == 32) { + info->mr = 0xffu << 16; + info->mg = 0xffu << 8; + info->mb = 0xffu << 0; + info->ma = 0xffu << 24; + info->all_a = 0; // if all_a is 0 at end, then we loaded alpha + // channel but it was all 0 + } else { + // otherwise, use defaults, which is all-0 + info->mr = info->mg = info->mb = info->ma = 0; + } + return 1; + } + return 0; // error +} + +static void *stbi__bmp_parse_header(stbi__context *s, stbi__bmp_data *info) { + int hsz; + if (stbi__get8(s) != 'B' || stbi__get8(s) != 'M') return stbi__errpuc("not BMP", "Corrupt BMP"); + stbi__get32le(s); // discard filesize + stbi__get16le(s); // discard reserved + stbi__get16le(s); // discard reserved + info->offset = stbi__get32le(s); + info->hsz = hsz = stbi__get32le(s); + info->mr = info->mg = info->mb = info->ma = 0; + info->extra_read = 14; + + if (info->offset < 0) return stbi__errpuc("bad BMP", "bad BMP"); + + if (hsz != 12 && hsz != 40 && hsz != 56 && hsz != 108 && hsz != 124) + return stbi__errpuc("unknown BMP", "BMP type not supported: unknown"); + if (hsz == 12) { + s->img_x = stbi__get16le(s); + s->img_y = stbi__get16le(s); + } else { + s->img_x = stbi__get32le(s); + s->img_y = stbi__get32le(s); + } + if (stbi__get16le(s) != 1) return stbi__errpuc("bad BMP", "bad BMP"); + info->bpp = stbi__get16le(s); + if (hsz != 12) { + int compress = stbi__get32le(s); + if (compress == 1 || compress == 2) + return stbi__errpuc("BMP RLE", "BMP type not supported: RLE"); + if (compress >= 4) + return stbi__errpuc("BMP JPEG/PNG", + "BMP type not supported: unsupported compression"); // this + // includes + // PNG/JPEG + // modes + if (compress == 3 && info->bpp != 16 && info->bpp != 32) + return stbi__errpuc("bad BMP", "bad BMP"); // bitfields requires 16 or 32 bits/pixel + stbi__get32le(s); // discard sizeof + stbi__get32le(s); // discard hres + stbi__get32le(s); // discard vres + stbi__get32le(s); // discard colorsused + stbi__get32le(s); // discard max important + if (hsz == 40 || hsz == 56) { + if (hsz == 56) { + stbi__get32le(s); + stbi__get32le(s); + stbi__get32le(s); + stbi__get32le(s); + } + if (info->bpp == 16 || info->bpp == 32) { + if (compress == 0) { + stbi__bmp_set_mask_defaults(info, compress); + } else if (compress == 3) { + info->mr = stbi__get32le(s); + info->mg = stbi__get32le(s); + info->mb = stbi__get32le(s); + info->extra_read += 12; + // not documented, but generated by photoshop and handled by + // mspaint + if (info->mr == info->mg && info->mg == info->mb) { + // ?!?!? + return stbi__errpuc("bad BMP", "bad BMP"); + } + } else + return stbi__errpuc("bad BMP", "bad BMP"); + } + } else { + // V4/V5 header + int i; + if (hsz != 108 && hsz != 124) return stbi__errpuc("bad BMP", "bad BMP"); + info->mr = stbi__get32le(s); + info->mg = stbi__get32le(s); + info->mb = stbi__get32le(s); + info->ma = stbi__get32le(s); + if (compress != 3) // override mr/mg/mb unless in BI_BITFIELDS mode, as per docs + stbi__bmp_set_mask_defaults(info, compress); + stbi__get32le(s); // discard color space + for (i = 0; i < 12; ++i) stbi__get32le(s); // discard color space parameters + if (hsz == 124) { + stbi__get32le(s); // discard rendering intent + stbi__get32le(s); // discard offset of profile data + stbi__get32le(s); // discard size of profile data + stbi__get32le(s); // discard reserved + } + } + } + return (void *)1; +} + +static void *stbi__bmp_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, + stbi__result_info *ri) { + stbi_uc *out; + unsigned int mr = 0, mg = 0, mb = 0, ma = 0, all_a; + stbi_uc pal[256][4]; + int psize = 0, i, j, width; + int flip_vertically, pad, target; + stbi__bmp_data info; + STBI_NOTUSED(ri); + + info.all_a = 255; + if (stbi__bmp_parse_header(s, &info) == NULL) return NULL; // error code already set + + flip_vertically = ((int)s->img_y) > 0; + s->img_y = abs((int)s->img_y); + + if (s->img_y > STBI_MAX_DIMENSIONS) + return stbi__errpuc("too large", "Very large image (corrupt?)"); + if (s->img_x > STBI_MAX_DIMENSIONS) + return stbi__errpuc("too large", "Very large image (corrupt?)"); + + mr = info.mr; + mg = info.mg; + mb = info.mb; + ma = info.ma; + all_a = info.all_a; + + if (info.hsz == 12) { + if (info.bpp < 24) psize = (info.offset - info.extra_read - 24) / 3; + } else { + if (info.bpp < 16) psize = (info.offset - info.extra_read - info.hsz) >> 2; + } + if (psize == 0) { + // accept some number of extra bytes after the header, but if the offset + // points either to before the header ends or implies a large amount of + // extra data, reject the file as malformed + int bytes_read_so_far = + s->callback_already_read + (int)(s->img_buffer - s->img_buffer_original); + int header_limit = 1024; // max we actually read is below 256 bytes currently. + int extra_data_limit = 256 * 4; // what ordinarily goes here is a palette; 256 entries*4 + // bytes is its max size. + if (bytes_read_so_far <= 0 || bytes_read_so_far > header_limit) { + return stbi__errpuc("bad header", "Corrupt BMP"); + } + // we established that bytes_read_so_far is positive and sensible. + // the first half of this test rejects offsets that are either too small + // positives, or negative, and guarantees that info.offset >= + // bytes_read_so_far > 0. this in turn ensures the number computed in + // the second half of the test can't overflow. + if (info.offset < bytes_read_so_far || info.offset - bytes_read_so_far > extra_data_limit) { + return stbi__errpuc("bad offset", "Corrupt BMP"); + } else { + stbi__skip(s, info.offset - bytes_read_so_far); + } + } + + if (info.bpp == 24 && ma == 0xff000000) + s->img_n = 3; + else + s->img_n = ma ? 4 : 3; + if (req_comp && req_comp >= 3) // we can directly decode 3 or 4 + target = req_comp; + else + target = s->img_n; // if they want monochrome, we'll post-convert + + // sanity-check size + if (!stbi__mad3sizes_valid(target, s->img_x, s->img_y, 0)) + return stbi__errpuc("too large", "Corrupt BMP"); + + out = (stbi_uc *)stbi__malloc_mad3(target, s->img_x, s->img_y, 0); + if (!out) return stbi__errpuc("outofmem", "Out of memory"); + if (info.bpp < 16) { + int z = 0; + if (psize == 0 || psize > 256) { + STBI_FREE(out); + return stbi__errpuc("invalid", "Corrupt BMP"); + } + for (i = 0; i < psize; ++i) { + pal[i][2] = stbi__get8(s); + pal[i][1] = stbi__get8(s); + pal[i][0] = stbi__get8(s); + if (info.hsz != 12) stbi__get8(s); + pal[i][3] = 255; + } + stbi__skip(s, info.offset - info.extra_read - info.hsz - psize * (info.hsz == 12 ? 3 : 4)); + if (info.bpp == 1) + width = (s->img_x + 7) >> 3; + else if (info.bpp == 4) + width = (s->img_x + 1) >> 1; + else if (info.bpp == 8) + width = s->img_x; + else { + STBI_FREE(out); + return stbi__errpuc("bad bpp", "Corrupt BMP"); + } + pad = (-width) & 3; + if (info.bpp == 1) { + for (j = 0; j < (int)s->img_y; ++j) { + int bit_offset = 7, v = stbi__get8(s); + for (i = 0; i < (int)s->img_x; ++i) { + int color = (v >> bit_offset) & 0x1; + out[z++] = pal[color][0]; + out[z++] = pal[color][1]; + out[z++] = pal[color][2]; + if (target == 4) out[z++] = 255; + if (i + 1 == (int)s->img_x) break; + if ((--bit_offset) < 0) { + bit_offset = 7; + v = stbi__get8(s); + } + } + stbi__skip(s, pad); + } + } else { + for (j = 0; j < (int)s->img_y; ++j) { + for (i = 0; i < (int)s->img_x; i += 2) { + int v = stbi__get8(s), v2 = 0; + if (info.bpp == 4) { + v2 = v & 15; + v >>= 4; + } + out[z++] = pal[v][0]; + out[z++] = pal[v][1]; + out[z++] = pal[v][2]; + if (target == 4) out[z++] = 255; + if (i + 1 == (int)s->img_x) break; + v = (info.bpp == 8) ? stbi__get8(s) : v2; + out[z++] = pal[v][0]; + out[z++] = pal[v][1]; + out[z++] = pal[v][2]; + if (target == 4) out[z++] = 255; + } + stbi__skip(s, pad); + } + } + } else { + int rshift = 0, gshift = 0, bshift = 0, ashift = 0, rcount = 0, gcount = 0, bcount = 0, + acount = 0; + int z = 0; + int easy = 0; + stbi__skip(s, info.offset - info.extra_read - info.hsz); + if (info.bpp == 24) + width = 3 * s->img_x; + else if (info.bpp == 16) + width = 2 * s->img_x; + else /* bpp = 32 and pad = 0 */ + width = 0; + pad = (-width) & 3; + if (info.bpp == 24) { + easy = 1; + } else if (info.bpp == 32) { + if (mb == 0xff && mg == 0xff00 && mr == 0x00ff0000 && ma == 0xff000000) easy = 2; + } + if (!easy) { + if (!mr || !mg || !mb) { + STBI_FREE(out); + return stbi__errpuc("bad masks", "Corrupt BMP"); + } + // right shift amt to put high bit in position #7 + rshift = stbi__high_bit(mr) - 7; + rcount = stbi__bitcount(mr); + gshift = stbi__high_bit(mg) - 7; + gcount = stbi__bitcount(mg); + bshift = stbi__high_bit(mb) - 7; + bcount = stbi__bitcount(mb); + ashift = stbi__high_bit(ma) - 7; + acount = stbi__bitcount(ma); + if (rcount > 8 || gcount > 8 || bcount > 8 || acount > 8) { + STBI_FREE(out); + return stbi__errpuc("bad masks", "Corrupt BMP"); + } + } + for (j = 0; j < (int)s->img_y; ++j) { + if (easy) { + for (i = 0; i < (int)s->img_x; ++i) { + unsigned char a; + out[z + 2] = stbi__get8(s); + out[z + 1] = stbi__get8(s); + out[z + 0] = stbi__get8(s); + z += 3; + a = (easy == 2 ? stbi__get8(s) : 255); + all_a |= a; + if (target == 4) out[z++] = a; + } + } else { + int bpp = info.bpp; + for (i = 0; i < (int)s->img_x; ++i) { + stbi__uint32 v = + (bpp == 16 ? (stbi__uint32)stbi__get16le(s) : stbi__get32le(s)); + unsigned int a; + out[z++] = STBI__BYTECAST(stbi__shiftsigned(v & mr, rshift, rcount)); + out[z++] = STBI__BYTECAST(stbi__shiftsigned(v & mg, gshift, gcount)); + out[z++] = STBI__BYTECAST(stbi__shiftsigned(v & mb, bshift, bcount)); + a = (ma ? stbi__shiftsigned(v & ma, ashift, acount) : 255); + all_a |= a; + if (target == 4) out[z++] = STBI__BYTECAST(a); + } + } + stbi__skip(s, pad); + } + } + + // if alpha channel is all 0s, replace with all 255s + if (target == 4 && all_a == 0) + for (i = 4 * s->img_x * s->img_y - 1; i >= 0; i -= 4) out[i] = 255; + + if (flip_vertically) { + stbi_uc t; + for (j = 0; j < (int)s->img_y >> 1; ++j) { + stbi_uc *p1 = out + j * s->img_x * target; + stbi_uc *p2 = out + (s->img_y - 1 - j) * s->img_x * target; + for (i = 0; i < (int)s->img_x * target; ++i) { + t = p1[i]; + p1[i] = p2[i]; + p2[i] = t; + } + } + } + + if (req_comp && req_comp != target) { + out = stbi__convert_format(out, target, req_comp, s->img_x, s->img_y); + if (out == NULL) return out; // stbi__convert_format frees input on failure + } + + *x = s->img_x; + *y = s->img_y; + if (comp) *comp = s->img_n; + return out; +} +#endif + +// Targa Truevision - TGA +// by Jonathan Dummer +#ifndef STBI_NO_TGA +// returns STBI_rgb or whatever, 0 on error +static int stbi__tga_get_comp(int bits_per_pixel, int is_grey, int *is_rgb16) { + // only RGB or RGBA (incl. 16bit) or grey allowed + if (is_rgb16) *is_rgb16 = 0; + switch (bits_per_pixel) { + case 8: + return STBI_grey; + case 16: + if (is_grey) return STBI_grey_alpha; + // fallthrough + case 15: + if (is_rgb16) *is_rgb16 = 1; + return STBI_rgb; + case 24: // fallthrough + case 32: + return bits_per_pixel / 8; + default: + return 0; + } +} + +static int stbi__tga_info(stbi__context *s, int *x, int *y, int *comp) { + int tga_w, tga_h, tga_comp, tga_image_type, tga_bits_per_pixel, tga_colormap_bpp; + int sz, tga_colormap_type; + stbi__get8(s); // discard Offset + tga_colormap_type = stbi__get8(s); // colormap type + if (tga_colormap_type > 1) { + stbi__rewind(s); + return 0; // only RGB or indexed allowed + } + tga_image_type = stbi__get8(s); // image type + if (tga_colormap_type == 1) { // colormapped (paletted) image + if (tga_image_type != 1 && tga_image_type != 9) { + stbi__rewind(s); + return 0; + } + stbi__skip(s, 4); // skip index of first colormap entry and number of entries + sz = stbi__get8(s); // check bits per palette color entry + if ((sz != 8) && (sz != 15) && (sz != 16) && (sz != 24) && (sz != 32)) { + stbi__rewind(s); + return 0; + } + stbi__skip(s, 4); // skip image x and y origin + tga_colormap_bpp = sz; + } else { // "normal" image w/o colormap - only RGB or grey allowed, +/- RLE + if ((tga_image_type != 2) && (tga_image_type != 3) && (tga_image_type != 10) && + (tga_image_type != 11)) { + stbi__rewind(s); + return 0; // only RGB or grey allowed, +/- RLE + } + stbi__skip(s, 9); // skip colormap specification and image x/y origin + tga_colormap_bpp = 0; + } + tga_w = stbi__get16le(s); + if (tga_w < 1) { + stbi__rewind(s); + return 0; // test width + } + tga_h = stbi__get16le(s); + if (tga_h < 1) { + stbi__rewind(s); + return 0; // test height + } + tga_bits_per_pixel = stbi__get8(s); // bits per pixel + stbi__get8(s); // ignore alpha bits + if (tga_colormap_bpp != 0) { + if ((tga_bits_per_pixel != 8) && (tga_bits_per_pixel != 16)) { + // when using a colormap, tga_bits_per_pixel is the size of the + // indexes I don't think anything but 8 or 16bit indexes makes sense + stbi__rewind(s); + return 0; + } + tga_comp = stbi__tga_get_comp(tga_colormap_bpp, 0, NULL); + } else { + tga_comp = stbi__tga_get_comp(tga_bits_per_pixel, + (tga_image_type == 3) || (tga_image_type == 11), NULL); + } + if (!tga_comp) { + stbi__rewind(s); + return 0; + } + if (x) *x = tga_w; + if (y) *y = tga_h; + if (comp) *comp = tga_comp; + return 1; // seems to have passed everything +} + +static int stbi__tga_test(stbi__context *s) { + int res = 0; + int sz, tga_color_type; + stbi__get8(s); // discard Offset + tga_color_type = stbi__get8(s); // color type + if (tga_color_type > 1) goto errorEnd; // only RGB or indexed allowed + sz = stbi__get8(s); // image type + if (tga_color_type == 1) { // colormapped (paletted) image + if (sz != 1 && sz != 9) goto errorEnd; // colortype 1 demands image type 1 or 9 + stbi__skip(s, 4); // skip index of first colormap entry and number of entries + sz = stbi__get8(s); // check bits per palette color entry + if ((sz != 8) && (sz != 15) && (sz != 16) && (sz != 24) && (sz != 32)) goto errorEnd; + stbi__skip(s, 4); // skip image x and y origin + } else { // "normal" image w/o colormap + if ((sz != 2) && (sz != 3) && (sz != 10) && (sz != 11)) + goto errorEnd; // only RGB or grey allowed, +/- RLE + stbi__skip(s, 9); // skip colormap specification and image x/y origin + } + if (stbi__get16le(s) < 1) goto errorEnd; // test width + if (stbi__get16le(s) < 1) goto errorEnd; // test height + sz = stbi__get8(s); // bits per pixel + if ((tga_color_type == 1) && (sz != 8) && (sz != 16)) + goto errorEnd; // for colormapped images, bpp is size of an index + if ((sz != 8) && (sz != 15) && (sz != 16) && (sz != 24) && (sz != 32)) goto errorEnd; + + res = 1; // if we got this far, everything's good and we can return 1 + // instead of 0 + +errorEnd: + stbi__rewind(s); + return res; +} + +// read 16bit value and convert to 24bit RGB +static void stbi__tga_read_rgb16(stbi__context *s, stbi_uc *out) { + stbi__uint16 px = (stbi__uint16)stbi__get16le(s); + stbi__uint16 fiveBitMask = 31; + // we have 3 channels with 5bits each + int r = (px >> 10) & fiveBitMask; + int g = (px >> 5) & fiveBitMask; + int b = px & fiveBitMask; + // Note that this saves the data in RGB(A) order, so it doesn't need to be + // swapped later + out[0] = (stbi_uc)((r * 255) / 31); + out[1] = (stbi_uc)((g * 255) / 31); + out[2] = (stbi_uc)((b * 255) / 31); + + // some people claim that the most significant bit might be used for alpha + // (possibly if an alpha-bit is set in the "image descriptor byte") + // but that only made 16bit test images completely translucent.. + // so let's treat all 15 and 16bit TGAs as RGB with no alpha. +} + +static void *stbi__tga_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, + stbi__result_info *ri) { + // read in the TGA header stuff + int tga_offset = stbi__get8(s); + int tga_indexed = stbi__get8(s); + int tga_image_type = stbi__get8(s); + int tga_is_RLE = 0; + int tga_palette_start = stbi__get16le(s); + int tga_palette_len = stbi__get16le(s); + int tga_palette_bits = stbi__get8(s); + int tga_x_origin = stbi__get16le(s); + int tga_y_origin = stbi__get16le(s); + int tga_width = stbi__get16le(s); + int tga_height = stbi__get16le(s); + int tga_bits_per_pixel = stbi__get8(s); + int tga_comp, tga_rgb16 = 0; + int tga_inverted = stbi__get8(s); + // int tga_alpha_bits = tga_inverted & 15; // the 4 lowest bits - unused + // (useless?) + // image data + unsigned char *tga_data; + unsigned char *tga_palette = NULL; + int i, j; + unsigned char raw_data[4] = {0}; + int RLE_count = 0; + int RLE_repeating = 0; + int read_next_pixel = 1; + STBI_NOTUSED(ri); + STBI_NOTUSED(tga_x_origin); // @TODO + STBI_NOTUSED(tga_y_origin); // @TODO + + if (tga_height > STBI_MAX_DIMENSIONS) + return stbi__errpuc("too large", "Very large image (corrupt?)"); + if (tga_width > STBI_MAX_DIMENSIONS) + return stbi__errpuc("too large", "Very large image (corrupt?)"); + + // do a tiny bit of precessing + if (tga_image_type >= 8) { + tga_image_type -= 8; + tga_is_RLE = 1; + } + tga_inverted = 1 - ((tga_inverted >> 5) & 1); + + // If I'm paletted, then I'll use the number of bits from the palette + if (tga_indexed) + tga_comp = stbi__tga_get_comp(tga_palette_bits, 0, &tga_rgb16); + else + tga_comp = stbi__tga_get_comp(tga_bits_per_pixel, (tga_image_type == 3), &tga_rgb16); + + if (!tga_comp) // shouldn't really happen, stbi__tga_test() should have + // ensured basic consistency + return stbi__errpuc("bad format", "Can't find out TGA pixelformat"); + + // tga info + *x = tga_width; + *y = tga_height; + if (comp) *comp = tga_comp; + + if (!stbi__mad3sizes_valid(tga_width, tga_height, tga_comp, 0)) + return stbi__errpuc("too large", "Corrupt TGA"); + + tga_data = (unsigned char *)stbi__malloc_mad3(tga_width, tga_height, tga_comp, 0); + if (!tga_data) return stbi__errpuc("outofmem", "Out of memory"); + + // skip to the data's starting position (offset usually = 0) + stbi__skip(s, tga_offset); + + if (!tga_indexed && !tga_is_RLE && !tga_rgb16) { + for (i = 0; i < tga_height; ++i) { + int row = tga_inverted ? tga_height - i - 1 : i; + stbi_uc *tga_row = tga_data + row * tga_width * tga_comp; + stbi__getn(s, tga_row, tga_width * tga_comp); + } + } else { + // do I need to load a palette? + if (tga_indexed) { + if (tga_palette_len == 0) { /* you have to have at least one entry! */ + STBI_FREE(tga_data); + return stbi__errpuc("bad palette", "Corrupt TGA"); + } + + // any data to skip? (offset usually = 0) + stbi__skip(s, tga_palette_start); + // load the palette + tga_palette = (unsigned char *)stbi__malloc_mad2(tga_palette_len, tga_comp, 0); + if (!tga_palette) { + STBI_FREE(tga_data); + return stbi__errpuc("outofmem", "Out of memory"); + } + if (tga_rgb16) { + stbi_uc *pal_entry = tga_palette; + STBI_ASSERT(tga_comp == STBI_rgb); + for (i = 0; i < tga_palette_len; ++i) { + stbi__tga_read_rgb16(s, pal_entry); + pal_entry += tga_comp; + } + } else if (!stbi__getn(s, tga_palette, tga_palette_len * tga_comp)) { + STBI_FREE(tga_data); + STBI_FREE(tga_palette); + return stbi__errpuc("bad palette", "Corrupt TGA"); + } + } + // load the data + for (i = 0; i < tga_width * tga_height; ++i) { + // if I'm in RLE mode, do I need to get a RLE stbi__pngchunk? + if (tga_is_RLE) { + if (RLE_count == 0) { + // yep, get the next byte as a RLE command + int RLE_cmd = stbi__get8(s); + RLE_count = 1 + (RLE_cmd & 127); + RLE_repeating = RLE_cmd >> 7; + read_next_pixel = 1; + } else if (!RLE_repeating) { + read_next_pixel = 1; + } + } else { + read_next_pixel = 1; + } + // OK, if I need to read a pixel, do it now + if (read_next_pixel) { + // load however much data we did have + if (tga_indexed) { + // read in index, then perform the lookup + int pal_idx = (tga_bits_per_pixel == 8) ? stbi__get8(s) : stbi__get16le(s); + if (pal_idx >= tga_palette_len) { + // invalid index + pal_idx = 0; + } + pal_idx *= tga_comp; + for (j = 0; j < tga_comp; ++j) { + raw_data[j] = tga_palette[pal_idx + j]; + } + } else if (tga_rgb16) { + STBI_ASSERT(tga_comp == STBI_rgb); + stbi__tga_read_rgb16(s, raw_data); + } else { + // read in the data raw + for (j = 0; j < tga_comp; ++j) { + raw_data[j] = stbi__get8(s); + } + } + // clear the reading flag for the next pixel + read_next_pixel = 0; + } // end of reading a pixel + + // copy data + for (j = 0; j < tga_comp; ++j) tga_data[i * tga_comp + j] = raw_data[j]; + + // in case we're in RLE mode, keep counting down + --RLE_count; + } + // do I need to invert the image? + if (tga_inverted) { + for (j = 0; j * 2 < tga_height; ++j) { + int index1 = j * tga_width * tga_comp; + int index2 = (tga_height - 1 - j) * tga_width * tga_comp; + for (i = tga_width * tga_comp; i > 0; --i) { + unsigned char temp = tga_data[index1]; + tga_data[index1] = tga_data[index2]; + tga_data[index2] = temp; + ++index1; + ++index2; + } + } + } + // clear my palette, if I had one + if (tga_palette != NULL) { + STBI_FREE(tga_palette); + } + } + + // swap RGB - if the source data was RGB16, it already is in the right order + if (tga_comp >= 3 && !tga_rgb16) { + unsigned char *tga_pixel = tga_data; + for (i = 0; i < tga_width * tga_height; ++i) { + unsigned char temp = tga_pixel[0]; + tga_pixel[0] = tga_pixel[2]; + tga_pixel[2] = temp; + tga_pixel += tga_comp; + } + } + + // convert to target component count + if (req_comp && req_comp != tga_comp) + tga_data = stbi__convert_format(tga_data, tga_comp, req_comp, tga_width, tga_height); + + // the things I do to get rid of an error message, and yet keep + // Microsoft's C compilers happy... [8^( + tga_palette_start = tga_palette_len = tga_palette_bits = tga_x_origin = tga_y_origin = 0; + STBI_NOTUSED(tga_palette_start); + // OK, done + return tga_data; +} +#endif + +// ************************************************************************************************* +// Photoshop PSD loader -- PD by Thatcher Ulrich, integration by Nicolas Schulz, +// tweaked by STB + +#ifndef STBI_NO_PSD +static int stbi__psd_test(stbi__context *s) { + int r = (stbi__get32be(s) == 0x38425053); + stbi__rewind(s); + return r; +} + +static int stbi__psd_decode_rle(stbi__context *s, stbi_uc *p, int pixelCount) { + int count, nleft, len; + + count = 0; + while ((nleft = pixelCount - count) > 0) { + len = stbi__get8(s); + if (len == 128) { + // No-op. + } else if (len < 128) { + // Copy next len+1 bytes literally. + len++; + if (len > nleft) return 0; // corrupt data + count += len; + while (len) { + *p = stbi__get8(s); + p += 4; + len--; + } + } else if (len > 128) { + stbi_uc val; + // Next -len+1 bytes in the dest are replicated from next source + // byte. (Interpret len as a negative 8-bit int.) + len = 257 - len; + if (len > nleft) return 0; // corrupt data + val = stbi__get8(s); + count += len; + while (len) { + *p = val; + p += 4; + len--; + } + } + } + + return 1; +} + +static void *stbi__psd_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, + stbi__result_info *ri, int bpc) { + int pixelCount; + int channelCount, compression; + int channel, i; + int bitdepth; + int w, h; + stbi_uc *out; + STBI_NOTUSED(ri); + + // Check identifier + if (stbi__get32be(s) != 0x38425053) // "8BPS" + return stbi__errpuc("not PSD", "Corrupt PSD image"); + + // Check file type version. + if (stbi__get16be(s) != 1) + return stbi__errpuc("wrong version", "Unsupported version of PSD image"); + + // Skip 6 reserved bytes. + stbi__skip(s, 6); + + // Read the number of channels (R, G, B, A, etc). + channelCount = stbi__get16be(s); + if (channelCount < 0 || channelCount > 16) + return stbi__errpuc("wrong channel count", "Unsupported number of channels in PSD image"); + + // Read the rows and columns of the image. + h = stbi__get32be(s); + w = stbi__get32be(s); + + if (h > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large", "Very large image (corrupt?)"); + if (w > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large", "Very large image (corrupt?)"); + + // Make sure the depth is 8 bits. + bitdepth = stbi__get16be(s); + if (bitdepth != 8 && bitdepth != 16) + return stbi__errpuc("unsupported bit depth", "PSD bit depth is not 8 or 16 bit"); + + // Make sure the color mode is RGB. + // Valid options are: + // 0: Bitmap + // 1: Grayscale + // 2: Indexed color + // 3: RGB color + // 4: CMYK color + // 7: Multichannel + // 8: Duotone + // 9: Lab color + if (stbi__get16be(s) != 3) + return stbi__errpuc("wrong color format", "PSD is not in RGB color format"); + + // Skip the Mode Data. (It's the palette for indexed color; other info for + // other modes.) + stbi__skip(s, stbi__get32be(s)); + + // Skip the image resources. (resolution, pen tool paths, etc) + stbi__skip(s, stbi__get32be(s)); + + // Skip the reserved data. + stbi__skip(s, stbi__get32be(s)); + + // Find out if the data is compressed. + // Known values: + // 0: no compression + // 1: RLE compressed + compression = stbi__get16be(s); + if (compression > 1) + return stbi__errpuc("bad compression", "PSD has an unknown compression format"); + + // Check size + if (!stbi__mad3sizes_valid(4, w, h, 0)) return stbi__errpuc("too large", "Corrupt PSD"); + + // Create the destination image. + + if (!compression && bitdepth == 16 && bpc == 16) { + out = (stbi_uc *)stbi__malloc_mad3(8, w, h, 0); + ri->bits_per_channel = 16; + } else + out = (stbi_uc *)stbi__malloc(4 * w * h); + + if (!out) return stbi__errpuc("outofmem", "Out of memory"); + pixelCount = w * h; + + // Initialize the data to zero. + // memset( out, 0, pixelCount * 4 ); + + // Finally, the image data. + if (compression) { + // RLE as used by .PSD and .TIFF + // Loop until you get the number of unpacked bytes you are expecting: + // Read the next source byte into n. + // If n is between 0 and 127 inclusive, copy the next n+1 bytes + // literally. Else if n is between -127 and -1 inclusive, copy the + // next byte -n+1 times. Else if n is 128, noop. + // Endloop + + // The RLE-compressed data is preceded by a 2-byte data count for each + // row in the data, which we're going to just skip. + stbi__skip(s, h * channelCount * 2); + + // Read the RLE data by channel. + for (channel = 0; channel < 4; channel++) { + stbi_uc *p; + + p = out + channel; + if (channel >= channelCount) { + // Fill this channel with default data. + for (i = 0; i < pixelCount; i++, p += 4) *p = (channel == 3 ? 255 : 0); + } else { + // Read the RLE data. + if (!stbi__psd_decode_rle(s, p, pixelCount)) { + STBI_FREE(out); + return stbi__errpuc("corrupt", "bad RLE data"); + } + } + } + + } else { + // We're at the raw image data. It's each channel in order (Red, Green, + // Blue, Alpha, ...) where each channel consists of an 8-bit (or 16-bit) + // value for each pixel in the image. + + // Read the data by channel. + for (channel = 0; channel < 4; channel++) { + if (channel >= channelCount) { + // Fill this channel with default data. + if (bitdepth == 16 && bpc == 16) { + stbi__uint16 *q = ((stbi__uint16 *)out) + channel; + stbi__uint16 val = channel == 3 ? 65535 : 0; + for (i = 0; i < pixelCount; i++, q += 4) *q = val; + } else { + stbi_uc *p = out + channel; + stbi_uc val = channel == 3 ? 255 : 0; + for (i = 0; i < pixelCount; i++, p += 4) *p = val; + } + } else { + if (ri->bits_per_channel == 16) { // output bpc + stbi__uint16 *q = ((stbi__uint16 *)out) + channel; + for (i = 0; i < pixelCount; i++, q += 4) *q = (stbi__uint16)stbi__get16be(s); + } else { + stbi_uc *p = out + channel; + if (bitdepth == 16) { // input bpc + for (i = 0; i < pixelCount; i++, p += 4) + *p = (stbi_uc)(stbi__get16be(s) >> 8); + } else { + for (i = 0; i < pixelCount; i++, p += 4) *p = stbi__get8(s); + } + } + } + } + } + + // remove weird white matte from PSD + if (channelCount >= 4) { + if (ri->bits_per_channel == 16) { + for (i = 0; i < w * h; ++i) { + stbi__uint16 *pixel = (stbi__uint16 *)out + 4 * i; + if (pixel[3] != 0 && pixel[3] != 65535) { + float a = pixel[3] / 65535.0f; + float ra = 1.0f / a; + float inv_a = 65535.0f * (1 - ra); + pixel[0] = (stbi__uint16)(pixel[0] * ra + inv_a); + pixel[1] = (stbi__uint16)(pixel[1] * ra + inv_a); + pixel[2] = (stbi__uint16)(pixel[2] * ra + inv_a); + } + } + } else { + for (i = 0; i < w * h; ++i) { + unsigned char *pixel = out + 4 * i; + if (pixel[3] != 0 && pixel[3] != 255) { + float a = pixel[3] / 255.0f; + float ra = 1.0f / a; + float inv_a = 255.0f * (1 - ra); + pixel[0] = (unsigned char)(pixel[0] * ra + inv_a); + pixel[1] = (unsigned char)(pixel[1] * ra + inv_a); + pixel[2] = (unsigned char)(pixel[2] * ra + inv_a); + } + } + } + } + + // convert to desired output format + if (req_comp && req_comp != 4) { + if (ri->bits_per_channel == 16) + out = (stbi_uc *)stbi__convert_format16((stbi__uint16 *)out, 4, req_comp, w, h); + else + out = stbi__convert_format(out, 4, req_comp, w, h); + if (out == NULL) return out; // stbi__convert_format frees input on failure + } + + if (comp) *comp = 4; + *y = h; + *x = w; + + return out; +} +#endif + +// ************************************************************************************************* +// Softimage PIC loader +// by Tom Seddon +// +// See http://softimage.wiki.softimage.com/index.php/INFO:_PIC_file_format +// See http://ozviz.wasp.uwa.edu.au/~pbourke/dataformats/softimagepic/ + +#ifndef STBI_NO_PIC +static int stbi__pic_is4(stbi__context *s, const char *str) { + int i; + for (i = 0; i < 4; ++i) + if (stbi__get8(s) != (stbi_uc)str[i]) return 0; + + return 1; +} + +static int stbi__pic_test_core(stbi__context *s) { + int i; + + if (!stbi__pic_is4(s, "\x53\x80\xF6\x34")) return 0; + + for (i = 0; i < 84; ++i) stbi__get8(s); + + if (!stbi__pic_is4(s, "PICT")) return 0; + + return 1; +} + +typedef struct { + stbi_uc size, type, channel; +} stbi__pic_packet; + +static stbi_uc *stbi__readval(stbi__context *s, int channel, stbi_uc *dest) { + int mask = 0x80, i; + + for (i = 0; i < 4; ++i, mask >>= 1) { + if (channel & mask) { + if (stbi__at_eof(s)) return stbi__errpuc("bad file", "PIC file too short"); + dest[i] = stbi__get8(s); + } + } + + return dest; +} + +static void stbi__copyval(int channel, stbi_uc *dest, const stbi_uc *src) { + int mask = 0x80, i; + + for (i = 0; i < 4; ++i, mask >>= 1) + if (channel & mask) dest[i] = src[i]; +} + +static stbi_uc *stbi__pic_load_core(stbi__context *s, int width, int height, int *comp, + stbi_uc *result) { + int act_comp = 0, num_packets = 0, y, chained; + stbi__pic_packet packets[10]; + + // this will (should...) cater for even some bizarre stuff like having data + // for the same channel in multiple packets. + do { + stbi__pic_packet *packet; + + if (num_packets == sizeof(packets) / sizeof(packets[0])) + return stbi__errpuc("bad format", "too many packets"); + + packet = &packets[num_packets++]; + + chained = stbi__get8(s); + packet->size = stbi__get8(s); + packet->type = stbi__get8(s); + packet->channel = stbi__get8(s); + + act_comp |= packet->channel; + + if (stbi__at_eof(s)) return stbi__errpuc("bad file", "file too short (reading packets)"); + if (packet->size != 8) return stbi__errpuc("bad format", "packet isn't 8bpp"); + } while (chained); + + *comp = (act_comp & 0x10 ? 4 : 3); // has alpha channel? + + for (y = 0; y < height; ++y) { + int packet_idx; + + for (packet_idx = 0; packet_idx < num_packets; ++packet_idx) { + stbi__pic_packet *packet = &packets[packet_idx]; + stbi_uc *dest = result + y * width * 4; + + switch (packet->type) { + default: + return stbi__errpuc("bad format", "packet has bad compression type"); + + case 0: { // uncompressed + int x; + + for (x = 0; x < width; ++x, dest += 4) + if (!stbi__readval(s, packet->channel, dest)) return 0; + break; + } + + case 1: // Pure RLE + { + int left = width, i; + + while (left > 0) { + stbi_uc count, value[4]; + + count = stbi__get8(s); + if (stbi__at_eof(s)) + return stbi__errpuc("bad file", "file too short (pure read count)"); + + if (count > left) count = (stbi_uc)left; + + if (!stbi__readval(s, packet->channel, value)) return 0; + + for (i = 0; i < count; ++i, dest += 4) + stbi__copyval(packet->channel, dest, value); + left -= count; + } + } break; + + case 2: { // Mixed RLE + int left = width; + while (left > 0) { + int count = stbi__get8(s), i; + if (stbi__at_eof(s)) + return stbi__errpuc("bad file", "file too short (mixed read count)"); + + if (count >= 128) { // Repeated + stbi_uc value[4]; + + if (count == 128) + count = stbi__get16be(s); + else + count -= 127; + if (count > left) return stbi__errpuc("bad file", "scanline overrun"); + + if (!stbi__readval(s, packet->channel, value)) return 0; + + for (i = 0; i < count; ++i, dest += 4) + stbi__copyval(packet->channel, dest, value); + } else { // Raw + ++count; + if (count > left) return stbi__errpuc("bad file", "scanline overrun"); + + for (i = 0; i < count; ++i, dest += 4) + if (!stbi__readval(s, packet->channel, dest)) return 0; + } + left -= count; + } + break; + } + } + } + } + + return result; +} + +static void *stbi__pic_load(stbi__context *s, int *px, int *py, int *comp, int req_comp, + stbi__result_info *ri) { + stbi_uc *result; + int i, x, y, internal_comp; + STBI_NOTUSED(ri); + + if (!comp) comp = &internal_comp; + + for (i = 0; i < 92; ++i) stbi__get8(s); + + x = stbi__get16be(s); + y = stbi__get16be(s); + + if (y > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large", "Very large image (corrupt?)"); + if (x > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large", "Very large image (corrupt?)"); + + if (stbi__at_eof(s)) return stbi__errpuc("bad file", "file too short (pic header)"); + if (!stbi__mad3sizes_valid(x, y, 4, 0)) + return stbi__errpuc("too large", "PIC image too large to decode"); + + stbi__get32be(s); // skip `ratio' + stbi__get16be(s); // skip `fields' + stbi__get16be(s); // skip `pad' + + // intermediate buffer is RGBA + result = (stbi_uc *)stbi__malloc_mad3(x, y, 4, 0); + if (!result) return stbi__errpuc("outofmem", "Out of memory"); + memset(result, 0xff, x * y * 4); + + if (!stbi__pic_load_core(s, x, y, comp, result)) { + STBI_FREE(result); + result = 0; + } + *px = x; + *py = y; + if (req_comp == 0) req_comp = *comp; + result = stbi__convert_format(result, 4, req_comp, x, y); + + return result; +} + +static int stbi__pic_test(stbi__context *s) { + int r = stbi__pic_test_core(s); + stbi__rewind(s); + return r; +} +#endif + +// ************************************************************************************************* +// GIF loader -- public domain by Jean-Marc Lienher -- simplified/shrunk by stb + +#ifndef STBI_NO_GIF +typedef struct { + stbi__int16 prefix; + stbi_uc first; + stbi_uc suffix; +} stbi__gif_lzw; + +typedef struct { + int w, h; + stbi_uc *out; // output buffer (always 4 components) + stbi_uc *background; // The current "background" as far as a gif is concerned + stbi_uc *history; + int flags, bgindex, ratio, transparent, eflags; + stbi_uc pal[256][4]; + stbi_uc lpal[256][4]; + stbi__gif_lzw codes[8192]; + stbi_uc *color_table; + int parse, step; + int lflags; + int start_x, start_y; + int max_x, max_y; + int cur_x, cur_y; + int line_size; + int delay; +} stbi__gif; + +static int stbi__gif_test_raw(stbi__context *s) { + int sz; + if (stbi__get8(s) != 'G' || stbi__get8(s) != 'I' || stbi__get8(s) != 'F' || + stbi__get8(s) != '8') + return 0; + sz = stbi__get8(s); + if (sz != '9' && sz != '7') return 0; + if (stbi__get8(s) != 'a') return 0; + return 1; +} + +static int stbi__gif_test(stbi__context *s) { + int r = stbi__gif_test_raw(s); + stbi__rewind(s); + return r; +} + +static void stbi__gif_parse_colortable(stbi__context *s, stbi_uc pal[256][4], int num_entries, + int transp) { + int i; + for (i = 0; i < num_entries; ++i) { + pal[i][2] = stbi__get8(s); + pal[i][1] = stbi__get8(s); + pal[i][0] = stbi__get8(s); + pal[i][3] = transp == i ? 0 : 255; + } +} + +static int stbi__gif_header(stbi__context *s, stbi__gif *g, int *comp, int is_info) { + stbi_uc version; + if (stbi__get8(s) != 'G' || stbi__get8(s) != 'I' || stbi__get8(s) != 'F' || + stbi__get8(s) != '8') + return stbi__err("not GIF", "Corrupt GIF"); + + version = stbi__get8(s); + if (version != '7' && version != '9') return stbi__err("not GIF", "Corrupt GIF"); + if (stbi__get8(s) != 'a') return stbi__err("not GIF", "Corrupt GIF"); + + stbi__g_failure_reason = ""; + g->w = stbi__get16le(s); + g->h = stbi__get16le(s); + g->flags = stbi__get8(s); + g->bgindex = stbi__get8(s); + g->ratio = stbi__get8(s); + g->transparent = -1; + + if (g->w > STBI_MAX_DIMENSIONS) return stbi__err("too large", "Very large image (corrupt?)"); + if (g->h > STBI_MAX_DIMENSIONS) return stbi__err("too large", "Very large image (corrupt?)"); + + if (comp != 0) + *comp = 4; // can't actually tell whether it's 3 or 4 until we parse the + // comments + + if (is_info) return 1; + + if (g->flags & 0x80) stbi__gif_parse_colortable(s, g->pal, 2 << (g->flags & 7), -1); + + return 1; +} + +static int stbi__gif_info_raw(stbi__context *s, int *x, int *y, int *comp) { + stbi__gif *g = (stbi__gif *)stbi__malloc(sizeof(stbi__gif)); + if (!g) return stbi__err("outofmem", "Out of memory"); + if (!stbi__gif_header(s, g, comp, 1)) { + STBI_FREE(g); + stbi__rewind(s); + return 0; + } + if (x) *x = g->w; + if (y) *y = g->h; + STBI_FREE(g); + return 1; +} + +static void stbi__out_gif_code(stbi__gif *g, stbi__uint16 code) { + stbi_uc *p, *c; + int idx; + + // recurse to decode the prefixes, since the linked-list is backwards, + // and working backwards through an interleaved image would be nasty + if (g->codes[code].prefix >= 0) stbi__out_gif_code(g, g->codes[code].prefix); + + if (g->cur_y >= g->max_y) return; + + idx = g->cur_x + g->cur_y; + p = &g->out[idx]; + g->history[idx / 4] = 1; + + c = &g->color_table[g->codes[code].suffix * 4]; + if (c[3] > 128) { // don't render transparent pixels; + p[0] = c[2]; + p[1] = c[1]; + p[2] = c[0]; + p[3] = c[3]; + } + g->cur_x += 4; + + if (g->cur_x >= g->max_x) { + g->cur_x = g->start_x; + g->cur_y += g->step; + + while (g->cur_y >= g->max_y && g->parse > 0) { + g->step = (1 << g->parse) * g->line_size; + g->cur_y = g->start_y + (g->step >> 1); + --g->parse; + } + } +} + +static stbi_uc *stbi__process_gif_raster(stbi__context *s, stbi__gif *g) { + stbi_uc lzw_cs; + stbi__int32 len, init_code; + stbi__uint32 first; + stbi__int32 codesize, codemask, avail, oldcode, bits, valid_bits, clear; + stbi__gif_lzw *p; + + lzw_cs = stbi__get8(s); + if (lzw_cs > 12) return NULL; + clear = 1 << lzw_cs; + first = 1; + codesize = lzw_cs + 1; + codemask = (1 << codesize) - 1; + bits = 0; + valid_bits = 0; + for (init_code = 0; init_code < clear; init_code++) { + g->codes[init_code].prefix = -1; + g->codes[init_code].first = (stbi_uc)init_code; + g->codes[init_code].suffix = (stbi_uc)init_code; + } + + // support no starting clear code + avail = clear + 2; + oldcode = -1; + + len = 0; + for (;;) { + if (valid_bits < codesize) { + if (len == 0) { + len = stbi__get8(s); // start new block + if (len == 0) return g->out; + } + --len; + bits |= (stbi__int32)stbi__get8(s) << valid_bits; + valid_bits += 8; + } else { + stbi__int32 code = bits & codemask; + bits >>= codesize; + valid_bits -= codesize; + // @OPTIMIZE: is there some way we can accelerate the non-clear + // path? + if (code == clear) { // clear code + codesize = lzw_cs + 1; + codemask = (1 << codesize) - 1; + avail = clear + 2; + oldcode = -1; + first = 0; + } else if (code == clear + 1) { // end of stream code + stbi__skip(s, len); + while ((len = stbi__get8(s)) > 0) stbi__skip(s, len); + return g->out; + } else if (code <= avail) { + if (first) { + return stbi__errpuc("no clear code", "Corrupt GIF"); + } + + if (oldcode >= 0) { + p = &g->codes[avail++]; + if (avail > 8192) { + return stbi__errpuc("too many codes", "Corrupt GIF"); + } + + p->prefix = (stbi__int16)oldcode; + p->first = g->codes[oldcode].first; + p->suffix = (code == avail) ? p->first : g->codes[code].first; + } else if (code == avail) + return stbi__errpuc("illegal code in raster", "Corrupt GIF"); + + stbi__out_gif_code(g, (stbi__uint16)code); + + if ((avail & codemask) == 0 && avail <= 0x0FFF) { + codesize++; + codemask = (1 << codesize) - 1; + } + + oldcode = code; + } else { + return stbi__errpuc("illegal code in raster", "Corrupt GIF"); + } + } + } +} + +// this function is designed to support animated gifs, although stb_image +// doesn't support it two back is the image from two frames ago, used for a very +// specific disposal format +static stbi_uc *stbi__gif_load_next(stbi__context *s, stbi__gif *g, int *comp, int req_comp, + stbi_uc *two_back) { + int dispose; + int first_frame; + int pi; + int pcount; + STBI_NOTUSED(req_comp); + + // on first frame, any non-written pixels get the background colour + // (non-transparent) + first_frame = 0; + if (g->out == 0) { + if (!stbi__gif_header(s, g, comp, 0)) + return 0; // stbi__g_failure_reason set by stbi__gif_header + if (!stbi__mad3sizes_valid(4, g->w, g->h, 0)) + return stbi__errpuc("too large", "GIF image is too large"); + pcount = g->w * g->h; + g->out = (stbi_uc *)stbi__malloc(4 * pcount); + g->background = (stbi_uc *)stbi__malloc(4 * pcount); + g->history = (stbi_uc *)stbi__malloc(pcount); + if (!g->out || !g->background || !g->history) + return stbi__errpuc("outofmem", "Out of memory"); + + // image is treated as "transparent" at the start - ie, nothing + // overwrites the current background; background colour is only used for + // pixels that are not rendered first frame, after that "background" + // color refers to the color that was there the previous frame. + memset(g->out, 0x00, 4 * pcount); + memset(g->background, 0x00, + 4 * pcount); // state of the background (starts transparent) + memset(g->history, 0x00, + pcount); // pixels that were affected previous frame + first_frame = 1; + } else { + // second frame - how do we dispose of the previous one? + dispose = (g->eflags & 0x1C) >> 2; + pcount = g->w * g->h; + + if ((dispose == 3) && (two_back == 0)) { + dispose = 2; // if I don't have an image to revert back to, default + // to the old background + } + + if (dispose == 3) { // use previous graphic + for (pi = 0; pi < pcount; ++pi) { + if (g->history[pi]) { + memcpy(&g->out[pi * 4], &two_back[pi * 4], 4); + } + } + } else if (dispose == 2) { + // restore what was changed last frame to background before that + // frame; + for (pi = 0; pi < pcount; ++pi) { + if (g->history[pi]) { + memcpy(&g->out[pi * 4], &g->background[pi * 4], 4); + } + } + } else { + // This is a non-disposal case eithe way, so just + // leave the pixels as is, and they will become the new background + // 1: do not dispose + // 0: not specified. + } + + // background is what out is after the undoing of the previou frame; + memcpy(g->background, g->out, 4 * g->w * g->h); + } + + // clear my history; + memset(g->history, 0x00, + g->w * g->h); // pixels that were affected previous frame + + for (;;) { + int tag = stbi__get8(s); + switch (tag) { + case 0x2C: /* Image Descriptor */ + { + stbi__int32 x, y, w, h; + stbi_uc *o; + + x = stbi__get16le(s); + y = stbi__get16le(s); + w = stbi__get16le(s); + h = stbi__get16le(s); + if (((x + w) > (g->w)) || ((y + h) > (g->h))) + return stbi__errpuc("bad Image Descriptor", "Corrupt GIF"); + + g->line_size = g->w * 4; + g->start_x = x * 4; + g->start_y = y * g->line_size; + g->max_x = g->start_x + w * 4; + g->max_y = g->start_y + h * g->line_size; + g->cur_x = g->start_x; + g->cur_y = g->start_y; + + // if the width of the specified rectangle is 0, that means + // we may not see *any* pixels or the image is malformed; + // to make sure this is caught, move the current y down to + // max_y (which is what out_gif_code checks). + if (w == 0) g->cur_y = g->max_y; + + g->lflags = stbi__get8(s); + + if (g->lflags & 0x40) { + g->step = 8 * g->line_size; // first interlaced spacing + g->parse = 3; + } else { + g->step = g->line_size; + g->parse = 0; + } + + if (g->lflags & 0x80) { + stbi__gif_parse_colortable(s, g->lpal, 2 << (g->lflags & 7), + g->eflags & 0x01 ? g->transparent : -1); + g->color_table = (stbi_uc *)g->lpal; + } else if (g->flags & 0x80) { + g->color_table = (stbi_uc *)g->pal; + } else + return stbi__errpuc("missing color table", "Corrupt GIF"); + + o = stbi__process_gif_raster(s, g); + if (!o) return NULL; + + // if this was the first frame, + pcount = g->w * g->h; + if (first_frame && (g->bgindex > 0)) { + // if first frame, any pixel not drawn to gets the background + // color + for (pi = 0; pi < pcount; ++pi) { + if (g->history[pi] == 0) { + g->pal[g->bgindex][3] = 255; // just in case it was made transparent, undo + // that; It will be reset next frame if need + // be; + memcpy(&g->out[pi * 4], &g->pal[g->bgindex], 4); + } + } + } + + return o; + } + + case 0x21: // Comment Extension. + { + int len; + int ext = stbi__get8(s); + if (ext == 0xF9) { // Graphic Control Extension. + len = stbi__get8(s); + if (len == 4) { + g->eflags = stbi__get8(s); + g->delay = 10 * stbi__get16le(s); // delay - 1/100th of a second, + // saving as 1/1000ths. + + // unset old transparent + if (g->transparent >= 0) { + g->pal[g->transparent][3] = 255; + } + if (g->eflags & 0x01) { + g->transparent = stbi__get8(s); + if (g->transparent >= 0) { + g->pal[g->transparent][3] = 0; + } + } else { + // don't need transparent + stbi__skip(s, 1); + g->transparent = -1; + } + } else { + stbi__skip(s, len); + break; + } + } + while ((len = stbi__get8(s)) != 0) { + stbi__skip(s, len); + } + break; + } + + case 0x3B: // gif stream termination code + return (stbi_uc *)s; // using '1' causes warning on some compilers + + default: + return stbi__errpuc("unknown code", "Corrupt GIF"); + } + } +} + +static void *stbi__load_gif_main_outofmem(stbi__gif *g, stbi_uc *out, int **delays) { + STBI_FREE(g->out); + STBI_FREE(g->history); + STBI_FREE(g->background); + + if (out) STBI_FREE(out); + if (delays && *delays) STBI_FREE(*delays); + return stbi__errpuc("outofmem", "Out of memory"); +} + +static void *stbi__load_gif_main(stbi__context *s, int **delays, int *x, int *y, int *z, int *comp, + int req_comp) { + if (stbi__gif_test(s)) { + int layers = 0; + stbi_uc *u = 0; + stbi_uc *out = 0; + stbi_uc *two_back = 0; + stbi__gif g; + int stride; + int out_size = 0; + int delays_size = 0; + + STBI_NOTUSED(out_size); + STBI_NOTUSED(delays_size); + + memset(&g, 0, sizeof(g)); + if (delays) { + *delays = 0; + } + + do { + u = stbi__gif_load_next(s, &g, comp, req_comp, two_back); + if (u == (stbi_uc *)s) u = 0; // end of animated gif marker + + if (u) { + *x = g.w; + *y = g.h; + ++layers; + stride = g.w * g.h * 4; + + if (out) { + void *tmp = (stbi_uc *)STBI_REALLOC_SIZED(out, out_size, layers * stride); + if (!tmp) + return stbi__load_gif_main_outofmem(&g, out, delays); + else { + out = (stbi_uc *)tmp; + out_size = layers * stride; + } + + if (delays) { + int *new_delays = + (int *)STBI_REALLOC_SIZED(*delays, delays_size, sizeof(int) * layers); + if (!new_delays) return stbi__load_gif_main_outofmem(&g, out, delays); + *delays = new_delays; + delays_size = layers * sizeof(int); + } + } else { + out = (stbi_uc *)stbi__malloc(layers * stride); + if (!out) return stbi__load_gif_main_outofmem(&g, out, delays); + out_size = layers * stride; + if (delays) { + *delays = (int *)stbi__malloc(layers * sizeof(int)); + if (!*delays) return stbi__load_gif_main_outofmem(&g, out, delays); + delays_size = layers * sizeof(int); + } + } + memcpy(out + ((layers - 1) * stride), u, stride); + if (layers >= 2) { + two_back = out - 2 * stride; + } + + if (delays) { + (*delays)[layers - 1U] = g.delay; + } + } + } while (u != 0); + + // free temp buffer; + STBI_FREE(g.out); + STBI_FREE(g.history); + STBI_FREE(g.background); + + // do the final conversion after loading everything; + if (req_comp && req_comp != 4) + out = stbi__convert_format(out, 4, req_comp, layers * g.w, g.h); + + *z = layers; + return out; + } else { + return stbi__errpuc("not GIF", "Image was not as a gif type."); + } +} + +static void *stbi__gif_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, + stbi__result_info *ri) { + stbi_uc *u = 0; + stbi__gif g; + memset(&g, 0, sizeof(g)); + STBI_NOTUSED(ri); + + u = stbi__gif_load_next(s, &g, comp, req_comp, 0); + if (u == (stbi_uc *)s) u = 0; // end of animated gif marker + if (u) { + *x = g.w; + *y = g.h; + + // moved conversion to after successful load so that the same + // can be done for multiple frames. + if (req_comp && req_comp != 4) u = stbi__convert_format(u, 4, req_comp, g.w, g.h); + } else if (g.out) { + // if there was an error and we allocated an image buffer, free it! + STBI_FREE(g.out); + } + + // free buffers needed for multiple frame loading; + STBI_FREE(g.history); + STBI_FREE(g.background); + + return u; +} + +static int stbi__gif_info(stbi__context *s, int *x, int *y, int *comp) { + return stbi__gif_info_raw(s, x, y, comp); +} +#endif + +// ************************************************************************************************* +// Radiance RGBE HDR loader +// originally by Nicolas Schulz +#ifndef STBI_NO_HDR +static int stbi__hdr_test_core(stbi__context *s, const char *signature) { + int i; + for (i = 0; signature[i]; ++i) + if (stbi__get8(s) != signature[i]) return 0; + stbi__rewind(s); + return 1; +} + +static int stbi__hdr_test(stbi__context *s) { + int r = stbi__hdr_test_core(s, "#?RADIANCE\n"); + stbi__rewind(s); + if (!r) { + r = stbi__hdr_test_core(s, "#?RGBE\n"); + stbi__rewind(s); + } + return r; +} + +#define STBI__HDR_BUFLEN 1024 +static char *stbi__hdr_gettoken(stbi__context *z, char *buffer) { + int len = 0; + char c = '\0'; + + c = (char)stbi__get8(z); + + while (!stbi__at_eof(z) && c != '\n') { + buffer[len++] = c; + if (len == STBI__HDR_BUFLEN - 1) { + // flush to end of line + while (!stbi__at_eof(z) && stbi__get8(z) != '\n'); + break; + } + c = (char)stbi__get8(z); + } + + buffer[len] = 0; + return buffer; +} + +static void stbi__hdr_convert(float *output, stbi_uc *input, int req_comp) { + if (input[3] != 0) { + float f1; + // Exponent + f1 = (float)ldexp(1.0f, input[3] - (int)(128 + 8)); + if (req_comp <= 2) + output[0] = (input[0] + input[1] + input[2]) * f1 / 3; + else { + output[0] = input[0] * f1; + output[1] = input[1] * f1; + output[2] = input[2] * f1; + } + if (req_comp == 2) output[1] = 1; + if (req_comp == 4) output[3] = 1; + } else { + switch (req_comp) { + case 4: + output[3] = 1; /* fallthrough */ + case 3: + output[0] = output[1] = output[2] = 0; + break; + case 2: + output[1] = 1; /* fallthrough */ + case 1: + output[0] = 0; + break; + } + } +} + +static float *stbi__hdr_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, + stbi__result_info *ri) { + char buffer[STBI__HDR_BUFLEN]; + char *token; + int valid = 0; + int width, height; + stbi_uc *scanline; + float *hdr_data; + int len; + unsigned char count, value; + int i, j, k, c1, c2, z; + const char *headerToken; + STBI_NOTUSED(ri); + + // Check identifier + headerToken = stbi__hdr_gettoken(s, buffer); + if (strcmp(headerToken, "#?RADIANCE") != 0 && strcmp(headerToken, "#?RGBE") != 0) + return stbi__errpf("not HDR", "Corrupt HDR image"); + + // Parse header + for (;;) { + token = stbi__hdr_gettoken(s, buffer); + if (token[0] == 0) break; + if (strcmp(token, "FORMAT=32-bit_rle_rgbe") == 0) valid = 1; + } + + if (!valid) return stbi__errpf("unsupported format", "Unsupported HDR format"); + + // Parse width and height + // can't use sscanf() if we're not using stdio! + token = stbi__hdr_gettoken(s, buffer); + if (strncmp(token, "-Y ", 3)) + return stbi__errpf("unsupported data layout", "Unsupported HDR format"); + token += 3; + height = (int)strtol(token, &token, 10); + while (*token == ' ') ++token; + if (strncmp(token, "+X ", 3)) + return stbi__errpf("unsupported data layout", "Unsupported HDR format"); + token += 3; + width = (int)strtol(token, NULL, 10); + + if (height > STBI_MAX_DIMENSIONS) + return stbi__errpf("too large", "Very large image (corrupt?)"); + if (width > STBI_MAX_DIMENSIONS) return stbi__errpf("too large", "Very large image (corrupt?)"); + + *x = width; + *y = height; + + if (comp) *comp = 3; + if (req_comp == 0) req_comp = 3; + + if (!stbi__mad4sizes_valid(width, height, req_comp, sizeof(float), 0)) + return stbi__errpf("too large", "HDR image is too large"); + + // Read data + hdr_data = (float *)stbi__malloc_mad4(width, height, req_comp, sizeof(float), 0); + if (!hdr_data) return stbi__errpf("outofmem", "Out of memory"); + + // Load image data + // image data is stored as some number of sca + if (width < 8 || width >= 32768) { + // Read flat data + for (j = 0; j < height; ++j) { + for (i = 0; i < width; ++i) { + stbi_uc rgbe[4]; + main_decode_loop: + stbi__getn(s, rgbe, 4); + stbi__hdr_convert(hdr_data + j * width * req_comp + i * req_comp, rgbe, req_comp); + } + } + } else { + // Read RLE-encoded data + scanline = NULL; + + for (j = 0; j < height; ++j) { + c1 = stbi__get8(s); + c2 = stbi__get8(s); + len = stbi__get8(s); + if (c1 != 2 || c2 != 2 || (len & 0x80)) { + // not run-length encoded, so we have to actually use THIS data + // as a decoded pixel (note this can't be a valid pixel--one of + // RGB must be >= 128) + stbi_uc rgbe[4]; + rgbe[0] = (stbi_uc)c1; + rgbe[1] = (stbi_uc)c2; + rgbe[2] = (stbi_uc)len; + rgbe[3] = (stbi_uc)stbi__get8(s); + stbi__hdr_convert(hdr_data, rgbe, req_comp); + i = 1; + j = 0; + STBI_FREE(scanline); + goto main_decode_loop; // yes, this makes no sense + } + len <<= 8; + len |= stbi__get8(s); + if (len != width) { + STBI_FREE(hdr_data); + STBI_FREE(scanline); + return stbi__errpf("invalid decoded scanline length", "corrupt HDR"); + } + if (scanline == NULL) { + scanline = (stbi_uc *)stbi__malloc_mad2(width, 4, 0); + if (!scanline) { + STBI_FREE(hdr_data); + return stbi__errpf("outofmem", "Out of memory"); + } + } + + for (k = 0; k < 4; ++k) { + int nleft; + i = 0; + while ((nleft = width - i) > 0) { + count = stbi__get8(s); + if (count > 128) { + // Run + value = stbi__get8(s); + count -= 128; + if ((count == 0) || (count > nleft)) { + STBI_FREE(hdr_data); + STBI_FREE(scanline); + return stbi__errpf("corrupt", "bad RLE data in HDR"); + } + for (z = 0; z < count; ++z) scanline[i++ * 4 + k] = value; + } else { + // Dump + if ((count == 0) || (count > nleft)) { + STBI_FREE(hdr_data); + STBI_FREE(scanline); + return stbi__errpf("corrupt", "bad RLE data in HDR"); + } + for (z = 0; z < count; ++z) scanline[i++ * 4 + k] = stbi__get8(s); + } + } + } + for (i = 0; i < width; ++i) + stbi__hdr_convert(hdr_data + (j * width + i) * req_comp, scanline + i * 4, + req_comp); + } + if (scanline) STBI_FREE(scanline); + } + + return hdr_data; +} + +static int stbi__hdr_info(stbi__context *s, int *x, int *y, int *comp) { + char buffer[STBI__HDR_BUFLEN]; + char *token; + int valid = 0; + int dummy; + + if (!x) x = &dummy; + if (!y) y = &dummy; + if (!comp) comp = &dummy; + + if (stbi__hdr_test(s) == 0) { + stbi__rewind(s); + return 0; + } + + for (;;) { + token = stbi__hdr_gettoken(s, buffer); + if (token[0] == 0) break; + if (strcmp(token, "FORMAT=32-bit_rle_rgbe") == 0) valid = 1; + } + + if (!valid) { + stbi__rewind(s); + return 0; + } + token = stbi__hdr_gettoken(s, buffer); + if (strncmp(token, "-Y ", 3)) { + stbi__rewind(s); + return 0; + } + token += 3; + *y = (int)strtol(token, &token, 10); + while (*token == ' ') ++token; + if (strncmp(token, "+X ", 3)) { + stbi__rewind(s); + return 0; + } + token += 3; + *x = (int)strtol(token, NULL, 10); + *comp = 3; + return 1; +} +#endif // STBI_NO_HDR + +#ifndef STBI_NO_BMP +static int stbi__bmp_info(stbi__context *s, int *x, int *y, int *comp) { + void *p; + stbi__bmp_data info; + + info.all_a = 255; + p = stbi__bmp_parse_header(s, &info); + if (p == NULL) { + stbi__rewind(s); + return 0; + } + if (x) *x = s->img_x; + if (y) *y = s->img_y; + if (comp) { + if (info.bpp == 24 && info.ma == 0xff000000) + *comp = 3; + else + *comp = info.ma ? 4 : 3; + } + return 1; +} +#endif + +#ifndef STBI_NO_PSD +static int stbi__psd_info(stbi__context *s, int *x, int *y, int *comp) { + int channelCount, dummy, depth; + if (!x) x = &dummy; + if (!y) y = &dummy; + if (!comp) comp = &dummy; + if (stbi__get32be(s) != 0x38425053) { + stbi__rewind(s); + return 0; + } + if (stbi__get16be(s) != 1) { + stbi__rewind(s); + return 0; + } + stbi__skip(s, 6); + channelCount = stbi__get16be(s); + if (channelCount < 0 || channelCount > 16) { + stbi__rewind(s); + return 0; + } + *y = stbi__get32be(s); + *x = stbi__get32be(s); + depth = stbi__get16be(s); + if (depth != 8 && depth != 16) { + stbi__rewind(s); + return 0; + } + if (stbi__get16be(s) != 3) { + stbi__rewind(s); + return 0; + } + *comp = 4; + return 1; +} + +static int stbi__psd_is16(stbi__context *s) { + int channelCount, depth; + if (stbi__get32be(s) != 0x38425053) { + stbi__rewind(s); + return 0; + } + if (stbi__get16be(s) != 1) { + stbi__rewind(s); + return 0; + } + stbi__skip(s, 6); + channelCount = stbi__get16be(s); + if (channelCount < 0 || channelCount > 16) { + stbi__rewind(s); + return 0; + } + STBI_NOTUSED(stbi__get32be(s)); + STBI_NOTUSED(stbi__get32be(s)); + depth = stbi__get16be(s); + if (depth != 16) { + stbi__rewind(s); + return 0; + } + return 1; +} +#endif + +#ifndef STBI_NO_PIC +static int stbi__pic_info(stbi__context *s, int *x, int *y, int *comp) { + int act_comp = 0, num_packets = 0, chained, dummy; + stbi__pic_packet packets[10]; + + if (!x) x = &dummy; + if (!y) y = &dummy; + if (!comp) comp = &dummy; + + if (!stbi__pic_is4(s, "\x53\x80\xF6\x34")) { + stbi__rewind(s); + return 0; + } + + stbi__skip(s, 88); + + *x = stbi__get16be(s); + *y = stbi__get16be(s); + if (stbi__at_eof(s)) { + stbi__rewind(s); + return 0; + } + if ((*x) != 0 && (1 << 28) / (*x) < (*y)) { + stbi__rewind(s); + return 0; + } + + stbi__skip(s, 8); + + do { + stbi__pic_packet *packet; + + if (num_packets == sizeof(packets) / sizeof(packets[0])) return 0; + + packet = &packets[num_packets++]; + chained = stbi__get8(s); + packet->size = stbi__get8(s); + packet->type = stbi__get8(s); + packet->channel = stbi__get8(s); + act_comp |= packet->channel; + + if (stbi__at_eof(s)) { + stbi__rewind(s); + return 0; + } + if (packet->size != 8) { + stbi__rewind(s); + return 0; + } + } while (chained); + + *comp = (act_comp & 0x10 ? 4 : 3); + + return 1; +} +#endif + +// ************************************************************************************************* +// Portable Gray Map and Portable Pixel Map loader +// by Ken Miller +// +// PGM: http://netpbm.sourceforge.net/doc/pgm.html +// PPM: http://netpbm.sourceforge.net/doc/ppm.html +// +// Known limitations: +// Does not support comments in the header section +// Does not support ASCII image data (formats P2 and P3) + +#ifndef STBI_NO_PNM + +static int stbi__pnm_test(stbi__context *s) { + char p, t; + p = (char)stbi__get8(s); + t = (char)stbi__get8(s); + if (p != 'P' || (t != '5' && t != '6')) { + stbi__rewind(s); + return 0; + } + return 1; +} + +static void *stbi__pnm_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, + stbi__result_info *ri) { + stbi_uc *out; + STBI_NOTUSED(ri); + + ri->bits_per_channel = stbi__pnm_info(s, (int *)&s->img_x, (int *)&s->img_y, (int *)&s->img_n); + if (ri->bits_per_channel == 0) return 0; + + if (s->img_y > STBI_MAX_DIMENSIONS) + return stbi__errpuc("too large", "Very large image (corrupt?)"); + if (s->img_x > STBI_MAX_DIMENSIONS) + return stbi__errpuc("too large", "Very large image (corrupt?)"); + + *x = s->img_x; + *y = s->img_y; + if (comp) *comp = s->img_n; + + if (!stbi__mad4sizes_valid(s->img_n, s->img_x, s->img_y, ri->bits_per_channel / 8, 0)) + return stbi__errpuc("too large", "PNM too large"); + + out = (stbi_uc *)stbi__malloc_mad4(s->img_n, s->img_x, s->img_y, ri->bits_per_channel / 8, 0); + if (!out) return stbi__errpuc("outofmem", "Out of memory"); + if (!stbi__getn(s, out, s->img_n * s->img_x * s->img_y * (ri->bits_per_channel / 8))) { + STBI_FREE(out); + return stbi__errpuc("bad PNM", "PNM file truncated"); + } + + if (req_comp && req_comp != s->img_n) { + if (ri->bits_per_channel == 16) { + out = (stbi_uc *)stbi__convert_format16((stbi__uint16 *)out, s->img_n, req_comp, + s->img_x, s->img_y); + } else { + out = stbi__convert_format(out, s->img_n, req_comp, s->img_x, s->img_y); + } + if (out == NULL) return out; // stbi__convert_format frees input on failure + } + return out; +} + +static int stbi__pnm_isspace(char c) { + return c == ' ' || c == '\t' || c == '\n' || c == '\v' || c == '\f' || c == '\r'; +} + +static void stbi__pnm_skip_whitespace(stbi__context *s, char *c) { + for (;;) { + while (!stbi__at_eof(s) && stbi__pnm_isspace(*c)) *c = (char)stbi__get8(s); + + if (stbi__at_eof(s) || *c != '#') break; + + while (!stbi__at_eof(s) && *c != '\n' && *c != '\r') *c = (char)stbi__get8(s); + } +} + +static int stbi__pnm_isdigit(char c) { return c >= '0' && c <= '9'; } + +static int stbi__pnm_getinteger(stbi__context *s, char *c) { + int value = 0; + + while (!stbi__at_eof(s) && stbi__pnm_isdigit(*c)) { + value = value * 10 + (*c - '0'); + *c = (char)stbi__get8(s); + if ((value > 214748364) || (value == 214748364 && *c > '7')) + return stbi__err("integer parse overflow", + "Parsing an integer in the PPM header overflowed a 32-bit int"); + } + + return value; +} + +static int stbi__pnm_info(stbi__context *s, int *x, int *y, int *comp) { + int maxv, dummy; + char c, p, t; + + if (!x) x = &dummy; + if (!y) y = &dummy; + if (!comp) comp = &dummy; + + stbi__rewind(s); + + // Get identifier + p = (char)stbi__get8(s); + t = (char)stbi__get8(s); + if (p != 'P' || (t != '5' && t != '6')) { + stbi__rewind(s); + return 0; + } + + *comp = (t == '6') ? 3 : 1; // '5' is 1-component .pgm; '6' is 3-component .ppm + + c = (char)stbi__get8(s); + stbi__pnm_skip_whitespace(s, &c); + + *x = stbi__pnm_getinteger(s, &c); // read width + if (*x == 0) + return stbi__err("invalid width", "PPM image header had zero or overflowing width"); + stbi__pnm_skip_whitespace(s, &c); + + *y = stbi__pnm_getinteger(s, &c); // read height + if (*y == 0) + return stbi__err("invalid width", "PPM image header had zero or overflowing width"); + stbi__pnm_skip_whitespace(s, &c); + + maxv = stbi__pnm_getinteger(s, &c); // read max value + if (maxv > 65535) + return stbi__err("max value > 65535", "PPM image supports only 8-bit and 16-bit images"); + else if (maxv > 255) + return 16; + else + return 8; +} + +static int stbi__pnm_is16(stbi__context *s) { + if (stbi__pnm_info(s, NULL, NULL, NULL) == 16) return 1; + return 0; +} +#endif + +static int stbi__info_main(stbi__context *s, int *x, int *y, int *comp) { +#ifndef STBI_NO_JPEG + if (stbi__jpeg_info(s, x, y, comp)) return 1; +#endif + +#ifndef STBI_NO_PNG + if (stbi__png_info(s, x, y, comp)) return 1; +#endif + +#ifndef STBI_NO_GIF + if (stbi__gif_info(s, x, y, comp)) return 1; +#endif + +#ifndef STBI_NO_BMP + if (stbi__bmp_info(s, x, y, comp)) return 1; +#endif + +#ifndef STBI_NO_PSD + if (stbi__psd_info(s, x, y, comp)) return 1; +#endif + +#ifndef STBI_NO_PIC + if (stbi__pic_info(s, x, y, comp)) return 1; +#endif + +#ifndef STBI_NO_PNM + if (stbi__pnm_info(s, x, y, comp)) return 1; +#endif + +#ifndef STBI_NO_HDR + if (stbi__hdr_info(s, x, y, comp)) return 1; +#endif + +// test tga last because it's a crappy test! +#ifndef STBI_NO_TGA + if (stbi__tga_info(s, x, y, comp)) return 1; +#endif + return stbi__err("unknown image type", "Image not of any known type, or corrupt"); +} + +static int stbi__is_16_main(stbi__context *s) { +#ifndef STBI_NO_PNG + if (stbi__png_is16(s)) return 1; +#endif + +#ifndef STBI_NO_PSD + if (stbi__psd_is16(s)) return 1; +#endif + +#ifndef STBI_NO_PNM + if (stbi__pnm_is16(s)) return 1; +#endif + return 0; +} + +#ifndef STBI_NO_STDIO +STBIDEF int stbi_info(char const *filename, int *x, int *y, int *comp) { + FILE *f = stbi__fopen(filename, "rb"); + int result; + if (!f) return stbi__err("can't fopen", "Unable to open file"); + result = stbi_info_from_file(f, x, y, comp); + fclose(f); + return result; +} + +STBIDEF int stbi_info_from_file(FILE *f, int *x, int *y, int *comp) { + int r; + stbi__context s; + long pos = ftell(f); + stbi__start_file(&s, f); + r = stbi__info_main(&s, x, y, comp); + fseek(f, pos, SEEK_SET); + return r; +} + +STBIDEF int stbi_is_16_bit(char const *filename) { + FILE *f = stbi__fopen(filename, "rb"); + int result; + if (!f) return stbi__err("can't fopen", "Unable to open file"); + result = stbi_is_16_bit_from_file(f); + fclose(f); + return result; +} + +STBIDEF int stbi_is_16_bit_from_file(FILE *f) { + int r; + stbi__context s; + long pos = ftell(f); + stbi__start_file(&s, f); + r = stbi__is_16_main(&s); + fseek(f, pos, SEEK_SET); + return r; +} +#endif // !STBI_NO_STDIO + +STBIDEF int stbi_info_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *comp) { + stbi__context s; + stbi__start_mem(&s, buffer, len); + return stbi__info_main(&s, x, y, comp); +} + +STBIDEF int stbi_info_from_callbacks(stbi_io_callbacks const *c, void *user, int *x, int *y, + int *comp) { + stbi__context s; + stbi__start_callbacks(&s, (stbi_io_callbacks *)c, user); + return stbi__info_main(&s, x, y, comp); +} + +STBIDEF int stbi_is_16_bit_from_memory(stbi_uc const *buffer, int len) { + stbi__context s; + stbi__start_mem(&s, buffer, len); + return stbi__is_16_main(&s); +} + +STBIDEF int stbi_is_16_bit_from_callbacks(stbi_io_callbacks const *c, void *user) { + stbi__context s; + stbi__start_callbacks(&s, (stbi_io_callbacks *)c, user); + return stbi__is_16_main(&s); +} + +#endif // STB_IMAGE_IMPLEMENTATION + +/* + revision history: + 2.20 (2019-02-07) support utf8 filenames in Windows; fix warnings and + platform ifdefs 2.19 (2018-02-11) fix warning 2.18 (2018-01-30) fix + warnings 2.17 (2018-01-29) change sbti__shiftsigned to avoid clang -O2 bug + 1-bit BMP + *_is_16_bit api + avoid warnings + 2.16 (2017-07-23) all functions have 16-bit variants; + STBI_NO_STDIO works again; + compilation fixes; + fix rounding in unpremultiply; + optimize vertical flip; + disable raw_len validation; + documentation fixes + 2.15 (2017-03-18) fix png-1,2,4 bug; now all Imagenet JPGs decode; + warning fixes; disable run-time SSE detection on gcc; + uniform handling of optional "return" values; + thread-safe initialization of zlib tables + 2.14 (2017-03-03) remove deprecated STBI_JPEG_OLD; fixes for Imagenet + JPGs 2.13 (2016-11-29) add 16-bit API, only supported for PNG right now 2.12 + (2016-04-02) fix typo in 2.11 PSD fix that caused crashes 2.11 (2016-04-02) + allocate large structures on the stack remove white matting for transparent + PSD fix reported channel count for PNG & BMP re-enable SSE2 in non-gcc 64-bit + support RGB-formatted JPEG + read 16-bit PNGs (only as 8-bit) + 2.10 (2016-01-22) avoid warning introduced in 2.09 by STBI_REALLOC_SIZED + 2.09 (2016-01-16) allow comments in PNM files + 16-bit-per-pixel TGA (not bit-per-component) + info() for TGA could break due to .hdr handling + info() for BMP to shares code instead of sloppy parse + can use STBI_REALLOC_SIZED if allocator doesn't support + realloc code cleanup 2.08 (2015-09-13) fix to 2.07 cleanup, reading RGB PSD + as RGBA 2.07 (2015-09-13) fix compiler warnings partial animated GIF support + limited 16-bpc PSD support + #ifdef unused functions + bug with < 92 byte PIC,PNM,HDR,TGA + 2.06 (2015-04-19) fix bug where PSD returns wrong '*comp' value + 2.05 (2015-04-19) fix bug in progressive JPEG handling, fix warning + 2.04 (2015-04-15) try to re-enable SIMD on MinGW 64-bit + 2.03 (2015-04-12) extra corruption checking (mmozeiko) + stbi_set_flip_vertically_on_load (nguillemot) + fix NEON support; fix mingw support + 2.02 (2015-01-19) fix incorrect assert, fix warning + 2.01 (2015-01-17) fix various warnings; suppress SIMD on gcc 32-bit + without -msse2 2.00b (2014-12-25) fix STBI_MALLOC in progressive JPEG 2.00 + (2014-12-25) optimize JPG, including x86 SSE2 & NEON SIMD (ryg) progressive + JPEG (stb) PGM/PPM support (Ken Miller) STBI_MALLOC,STBI_REALLOC,STBI_FREE + GIF bugfix -- seemingly never worked + STBI_NO_*, STBI_ONLY_* + 1.48 (2014-12-14) fix incorrectly-named assert() + 1.47 (2014-12-14) 1/2/4-bit PNG support, both direct and paletted (Omar + Cornut & stb) optimize PNG (ryg) fix bug in interlaced PNG with + user-specified channel count (stb) 1.46 (2014-08-26) fix broken tRNS chunk + (colorkey-style transparency) in non-paletted PNG 1.45 (2014-08-16) fix + MSVC-ARM internal compiler error by wrapping malloc 1.44 (2014-08-07) + various warning fixes from Ronny Chevalier + 1.43 (2014-07-15) + fix MSVC-only compiler problem in code changed in 1.42 + 1.42 (2014-07-09) + don't define _CRT_SECURE_NO_WARNINGS (affects user code) + fixes to stbi__cleanup_jpeg path + added STBI_ASSERT to avoid requiring assert.h + 1.41 (2014-06-25) + fix search&replace from 1.36 that messed up comments/error + messages 1.40 (2014-06-22) fix gcc struct-initialization warning 1.39 + (2014-06-15) fix to TGA optimization when req_comp != number of components in + TGA; fix to GIF loading because BMP wasn't rewinding (whoops, no GIFs in my + test suite) add support for BMP version 5 (more ignored fields) 1.38 + (2014-06-06) suppress MSVC warnings on integer casts truncating values fix + accidental rename of 'skip' field of I/O 1.37 (2014-06-04) remove duplicate + typedef 1.36 (2014-06-03) convert to header file single-file library if + de-iphone isn't set, load iphone images color-swapped instead of returning + NULL 1.35 (2014-05-27) various warnings fix broken STBI_SIMD path fix bug + where stbi_load_from_file no longer left file pointer in correct place fix + broken non-easy path for 32-bit BMP (possibly never used) TGA optimization by + Arseny Kapoulkine 1.34 (unknown) use STBI_NOTUSED in + stbi__resample_row_generic(), fix one more leak in tga failure case 1.33 + (2011-07-14) make stbi_is_hdr work in STBI_NO_HDR (as specified), minor + compiler-friendly improvements 1.32 (2011-07-13) support for "info" function + for all supported filetypes (SpartanJ) 1.31 (2011-06-20) a few more leak + fixes, bug in PNG handling (SpartanJ) 1.30 (2011-06-11) added ability to + load files via callbacks to accomidate custom input streams (Ben Wenger) + removed deprecated format-specific test/load functions + removed support for installable file formats (stbi_loader) -- + would have been broken for IO callbacks anyway error cases in bmp and tga + give messages and don't leak (Raymond Barbiero, grisha) fix inefficiency in + decoding 32-bit BMP (David Woo) 1.29 (2010-08-16) various warning fixes from + Aurelien Pocheville 1.28 (2010-08-01) fix bug in GIF palette transparency + (SpartanJ) 1.27 (2010-08-01) cast-to-stbi_uc to fix warnings 1.26 + (2010-07-24) fix bug in file buffering for PNG reported by SpartanJ 1.25 + (2010-07-17) refix trans_data warning (Won Chun) 1.24 (2010-07-12) perf + improvements reading from files on platforms with lock-heavy fgetc() minor + perf improvements for jpeg deprecated type-specific functions so we'll get + feedback if they're needed attempt to fix trans_data warning (Won Chun) 1.23 + fixed bug in iPhone support 1.22 (2010-07-10) removed image *writing* + support stbi_info support from Jetro Lauha GIF support from Jean-Marc Lienher + iPhone PNG-extensions from James Brown + warning-fixes from Nicolas Schulz and Janez Zemva (i.stbi__err. + Janez (U+017D)emva) 1.21 fix use of 'stbi_uc' in header (reported by jon + blow) 1.20 added support for Softimage PIC, by Tom Seddon 1.19 bug in + interlaced PNG corruption check (found by ryg) 1.18 (2008-08-02) fix a + threading bug (local mutable static) 1.17 support interlaced PNG 1.16 + major bugfix - stbi__convert_format converted one too many pixels 1.15 + initialize some fields for thread safety 1.14 fix threadsafe conversion + bug header-file-only version (#define STBI_HEADER_FILE_ONLY before including) + 1.13 threadsafe + 1.12 const qualifiers in the API + 1.11 Support installable IDCT, colorspace conversion routines + 1.10 Fixes for 64-bit (don't use "unsigned long") + optimized upsampling by Fabian "ryg" Giesen + 1.09 Fix format-conversion for PSD code (bad global variables!) + 1.08 Thatcher Ulrich's PSD code integrated by Nicolas Schulz + 1.07 attempt to fix C++ warning/errors again + 1.06 attempt to fix C++ warning/errors again + 1.05 fix TGA loading to return correct *comp and use good luminance + calc 1.04 default float alpha is 1, not 255; use 'void *' for + stbi_image_free 1.03 bugfixes to STBI_NO_STDIO, STBI_NO_HDR 1.02 support + for (subset of) HDR files, float interface for preferred access to them 1.01 + fix bug: possible bug in handling right-side up bmps... not sure fix bug: the + stbi__bmp_load() and stbi__tga_load() functions didn't work at all 1.00 + interface to zlib that skips zlib header 0.99 correct handling of alpha in + palette 0.98 TGA loader by lonesock; dynamically add loaders (untested) + 0.97 jpeg errors on too large a file; also catch another malloc failure + 0.96 fix detection of invalid v value - particleman@mollyrocket forum + 0.95 during header scan, seek to markers in case of padding + 0.94 STBI_NO_STDIO to disable stdio usage; rename all #defines the same + 0.93 handle jpegtran output; verbose errors + 0.92 read 4,8,16,24,32-bit BMP files of several formats + 0.91 output 24-bit Windows 3.0 BMP files + 0.90 fix a few more warnings; bump version number to approach 1.0 + 0.61 bugfixes due to Marc LeBlanc, Christopher Lloyd + 0.60 fix compiling as c++ + 0.59 fix warnings: merge Dave Moore's -Wall fixes + 0.58 fix bug: zlib uncompressed mode len/nlen was wrong endian + 0.57 fix bug: jpg last huffman symbol before marker was >9 bits but + less than 16 available 0.56 fix bug: zlib uncompressed mode len vs. nlen + 0.55 fix bug: restart_interval not initialized to 0 + 0.54 allow NULL for 'int *comp' + 0.53 fix bug in png 3->4; speedup png decoding + 0.52 png handles req_comp=3,4 directly; minor cleanup; jpeg comments + 0.51 obey req_comp requests, 1-component jpegs return as 1-component, + on 'test' only check type, not whether we support this variant + 0.50 (2006-11-19) + first released version +*/ + +/* +------------------------------------------------------------------------------ +This software is available under 2 licenses -- choose whichever you prefer. +------------------------------------------------------------------------------ +ALTERNATIVE A - MIT License +Copyright (c) 2017 Sean Barrett +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +------------------------------------------------------------------------------ +ALTERNATIVE B - Public Domain (www.unlicense.org) +This is free and unencumbered software released into the public domain. +Anyone is free to copy, modify, publish, use, compile, sell, or distribute this +software, either in source code form or as a compiled binary, for any purpose, +commercial or non-commercial, and by any means. +In jurisdictions that recognize copyright laws, the author or authors of this +software dedicate any and all copyright interest in the software to the public +domain. We make this dedication for the benefit of the public at large and to +the detriment of our heirs and successors. We intend this dedication to be an +overt act of relinquishment in perpetuity of all present and future rights to +this software under copyright law. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN +ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +------------------------------------------------------------------------------ +*/ From 3ea999ed44e5325332b5afd7893007d27f65a776 Mon Sep 17 00:00:00 2001 From: Darya Nechaeva Date: Fri, 1 May 2026 01:08:56 +0300 Subject: [PATCH 11/16] ci: add simple build --- .github/workflows/ci.yml | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 .github/workflows/ci.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..de6c417 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,24 @@ +name: C CI + +on: + push: + pull_request: + branches: [ "main" ] + +jobs: + build-and-test: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v4 + + - name: Install dependencies + run: | + sudo apt-get update + sudo apt-get install -y build-essential clang libcmocka-dev + + - name: Build + run: make CC=gcc + + - name: Run tests + run: make test \ No newline at end of file From b90c0a72a37d0104805182144d661064cce014c4 Mon Sep 17 00:00:00 2001 From: Darya Nechaeva Date: Fri, 1 May 2026 13:57:33 +0300 Subject: [PATCH 12/16] refactor: filters formatting --- src/lib/filters.c | 184 +++++++++++++++++++++++----------------------- 1 file changed, 92 insertions(+), 92 deletions(-) diff --git a/src/lib/filters.c b/src/lib/filters.c index a55c195..e50fded 100644 --- a/src/lib/filters.c +++ b/src/lib/filters.c @@ -11,11 +11,10 @@ static struct Filter make_filter(size_t size, double *data, double factor, doubl struct Filter filter_identity(void) { // clang-format off - static double m[9] = - { - 0, 0, 0, - 0, 1, 0, - 0, 0, 0 + static double m[9] = { + 0, 0, 0, + 0, 1, 0, + 0, 0, 0 }; // clang-format on return make_filter(3, m, 1.0, 0.0); @@ -23,11 +22,10 @@ struct Filter filter_identity(void) { struct Filter filter_blur(void) { // clang-format off - static double m[9] = - { - 0.0, 0.2, 0.0, - 0.2, 0.2, 0.2, - 0.0, 0.2, 0.0 + static double m[9] = { + 0.0, 0.2, 0.0, + 0.2, 0.2, 0.2, + 0.0, 0.2, 0.0 }; // clang-format on return make_filter(3, m, 1.0, 0.0); @@ -35,11 +33,10 @@ struct Filter filter_blur(void) { struct Filter filter_gaussian(void) { // clang-format off - static double m[9] = - { - 1, 2, 1, - 2, 4, 2, - 1, 2, 1 + static double m[9] = { + 1, 2, 1, + 2, 4, 2, + 1, 2, 1 }; // clang-format on return make_filter(3, m, 1.0 / 16.0, 0.0); @@ -47,11 +44,10 @@ struct Filter filter_gaussian(void) { struct Filter filter_sharpen(void) { // clang-format off - static double m[9] = - { - -1, -1, -1, - -1, 9, -1, - -1, -1, -1 + static double m[9] = { + -1, -1, -1, + -1, 9, -1, + -1, -1, -1 }; // clang-format on return make_filter(3, m, 1.0, 0.0); @@ -59,11 +55,10 @@ struct Filter filter_sharpen(void) { struct Filter filter_edges(void) { // clang-format off - static double m[9] = - { - -1, -1, -1, - -1, 8, -1, - -1, -1, -1 + static double m[9] = { + -1, -1, -1, + -1, 8, -1, + -1, -1, -1 }; // clang-format on return make_filter(3, m, 1.0, 0.0); @@ -74,7 +69,7 @@ struct Filter filter_emboss(void) { static double m[9] = { -2, -1, 0, -1, 1, 1, - 0, 1, 2 + 0, 1, 2 }; // clang-format on return make_filter(3, m, 1.0, 128.0); @@ -85,9 +80,9 @@ struct Filter filter_blur5(void) { static double m[25] = { 0, 0, 1, 0, 0, 0, 1, 1, 1, 0, - 1,1,1,1,1, - 0,1,1,1,0, - 0,0,1,0,0 + 1, 1, 1, 1, 1, + 0, 1, 1, 1, 0, + 0, 0, 1, 0, 0 }; // clang-format on return make_filter(5, m, 1.0 / 13.0, 0.0); @@ -96,9 +91,11 @@ struct Filter filter_blur5(void) { struct Filter filter_gaussian5(void) { // clang-format off static double m[25] = { - 6, 24, 36, 24, 6, - 4, 16, 24, 16, 4, - 1, 4, 6, 4, 1 + 1, 4, 6, 4, 1, + 4, 16, 24, 16, 4, + 6, 24, 36, 24, 6, + 4, 16, 24, 16, 4, + 1, 4, 6, 4, 1 }; // clang-format on return make_filter(5, m, 1.0 / 256.0, 0.0); @@ -107,11 +104,11 @@ struct Filter filter_gaussian5(void) { struct Filter filter_sharpen5(void) { // clang-format off static double m[25] = { - -1, -1, -1, -1, -1, - -1, 2, 2, 2, -1, - -1, 2, 8, 2,-1, - -1, 2, 2, 2,-1, - -1,-1,-1,-1,-1 + -1, -1, -1, -1, -1, + -1, 2, 2, 2, -1, + -1, 2, 8, 2, -1, + -1, 2, 2, 2, -1, + -1, -1, -1, -1, -1 }; // clang-format on return make_filter(5, m, 1.0 / 8.0, 0.0); @@ -120,11 +117,11 @@ struct Filter filter_sharpen5(void) { struct Filter filter_edges5(void) { // clang-format off static double m[25] = { - 0, -1, -1, -1, 0, - -1, -1, -1, -1, -1, - -1, -1,16,-1,-1, - -1, -1,-1,-1,-1, - 0, -1,-1,-1, 0 + 0, -1, -1, -1, 0, + -1, -1, -1, -1, -1, + -1, -1, 24, -1, -1, + -1, -1, -1, -1, -1, + 0, -1, -1, -1, 0 }; // clang-format on return make_filter(5, m, 1.0, 0.0); @@ -146,13 +143,13 @@ struct Filter filter_emboss5(void) { struct Filter filter_blur7(void) { // clang-format off static double m[49] = { - 0, 0, 0, 1, 0, 0, 0, - 0, 0, 1,1,1,0,0, - 0,1,1,1,1,1,0, - 1,1,1,1,1,1,1, - 0,1,1,1,1,1,0, - 0,0,1,1,1,0,0, - 0,0,0,1,0,0,0 + 0, 0, 0, 1, 0, 0, 0, + 0, 0, 1, 1, 1, 0, 0, + 0, 1, 1, 1, 1, 1, 0, + 1, 1, 1, 1, 1, 1, 1, + 0, 1, 1, 1, 1, 1, 0, + 0, 0, 1, 1, 1, 0, 0, + 0, 0, 0, 1, 0, 0, 0 }; // clang-format on return make_filter(7, m, 1.0 / 25.0, 0.0); @@ -179,7 +176,7 @@ struct Filter filter_sharpen7(void) { -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 2, 2, 2, -1, -1, - -1, -1, 2, 12, 2, -1, -1, + -1, -1, 2, 36, 2, -1, -1, -1, -1, 2, 2, 2, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 @@ -194,7 +191,7 @@ struct Filter filter_edges7(void) { -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 24, -1, -1, -1, + -1, -1, -1, 48, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 @@ -221,15 +218,15 @@ struct Filter filter_emboss7(void) { struct Filter filter_blur9(void) { // clang-format off static double m[81] = { - 0,0,0,0,1,0,0,0,0, - 0,0,0,1,1,1,0,0,0, - 0,0,1,1,1,1,1,0,0, - 0,1,1,1,1,1,1,1,0, - 1,1,1,1,1,1,1,1,1, - 0,1,1,1,1,1,1,1,0, - 0,0,1,1,1,1,1,0,0, - 0,0,0,1,1,1,0,0,0, - 0,0,0,0,1,0,0,0,0 + 0, 0, 0, 0, 1, 0, 0, 0, 0, + 0, 0, 0, 1, 1, 1, 0, 0, 0, + 0, 0, 1, 1, 1, 1, 1, 0, 0, + 0, 1, 1, 1, 1, 1, 1, 1, 0, + 1, 1, 1, 1, 1, 1, 1, 1, 1, + 0, 1, 1, 1, 1, 1, 1, 1, 0, + 0, 0, 1, 1, 1, 1, 1, 0, 0, + 0, 0, 0, 1, 1, 1, 0, 0, 0, + 0, 0, 0, 0, 1, 0, 0, 0, 0 }; // clang-format on return make_filter(9, m, 1.0 / 41.0, 0.0); @@ -238,16 +235,16 @@ struct Filter filter_blur9(void) { struct Filter filter_gaussian9(void) { // clang-format off static double m[81] = { - 1, 8, 28, 56, 70, 56, 28, 8, 1, - 8, 64, 224, 448, 560, 448, 224, 64, 8, - 28,224, 784,1568,1960,1568, 784, 224, 28, - 56,448,1568,3136,3920,3136,1568, 448, 56, - 70,560,1960,3920,4900,3920,1960, 560, 70, - 56,448,1568,3136,3920,3136,1568, 448, 56, - 28,224, 784,1568,1960,1568, 784, 224, 28, - 8, 64, 224, 448, 560, 448, 224, 64, 8, - 1, 8, 28, 56, 70, 56, 28, 8, 1 - }; + 1, 8, 28, 56, 70, 56, 28, 8, 1, + 8, 64, 224, 448, 560, 448, 224, 64, 8, + 28, 224, 784,1568,1960,1568, 784, 224, 28, + 56, 448,1568,3136,3920,3136,1568, 448, 56, + 70, 560,1960,3920,4900,3920,1960, 560, 70, + 56, 448,1568,3136,3920,3136,1568, 448, 56, + 28, 224, 784,1568,1960,1568, 784, 224, 28, + 8, 64, 224, 448, 560, 448, 224, 64, 8, + 1, 8, 28, 56, 70, 56, 28, 8, 1 + }; // clang-format on return make_filter(9, m, 1.0 / 65536.0, 0.0); } @@ -255,15 +252,15 @@ struct Filter filter_gaussian9(void) { struct Filter filter_sharpen9(void) { // clang-format off static double m[81] = { - -1,-1,-1,-1,-1,-1,-1,-1,-1, - -1,-1,-1,-1,-1,-1,-1,-1,-1, - -1,-1,-1,-1,-1,-1,-1,-1,-1, - -1,-1,-1, 2, 2, 2,-1,-1,-1, - -1,-1,-1, 2,16, 2,-1,-1,-1, - -1,-1,-1, 2, 2, 2,-1,-1,-1, - -1,-1,-1,-1,-1,-1,-1,-1,-1, - -1,-1,-1,-1,-1,-1,-1,-1,-1, - -1,-1,-1,-1,-1,-1,-1,-1,-1 + -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 2, 2, 2, -1, -1, -1, + -1, -1, -1, 2, 65, 2, -1, -1, -1, + -1, -1, -1, 2, 2, 2, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1 }; // clang-format on return make_filter(9, m, 1.0 / 16.0, 0.0); @@ -272,15 +269,15 @@ struct Filter filter_sharpen9(void) { struct Filter filter_edges9(void) { // clang-format off static double m[81] = { - -1,-1,-1,-1,-1,-1,-1,-1,-1, - -1,-1,-1,-1,-1,-1,-1,-1,-1, - -1,-1,-1,-1,-1,-1,-1,-1,-1, - -1,-1,-1,-1,-1,-1,-1,-1,-1, - -1,-1,-1,-1,40,-1,-1,-1,-1, - -1,-1,-1,-1,-1,-1,-1,-1,-1, - -1,-1,-1,-1,-1,-1,-1,-1,-1, - -1,-1,-1,-1,-1,-1,-1,-1,-1, - -1,-1,-1,-1,-1,-1,-1,-1,-1 + -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 80, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1 }; // clang-format on return make_filter(9, m, 1.0, 0.0); @@ -304,26 +301,29 @@ struct Filter filter_emboss9(void) { } const FilterDef filter_list[] = { - /* 3x3 */ + /* 3×3 */ {"identity", filter_identity}, {"blur", filter_blur}, {"gaussian", filter_gaussian}, {"sharpen", filter_sharpen}, {"edges", filter_edges}, {"emboss", filter_emboss}, - /* 5x5 */ + + /* 5×5 */ {"blur5", filter_blur5}, {"gaussian5", filter_gaussian5}, {"sharpen5", filter_sharpen5}, {"edges5", filter_edges5}, {"emboss5", filter_emboss5}, - /* 7x7 */ + + /* 7×7 */ {"blur7", filter_blur7}, {"gaussian7", filter_gaussian7}, {"sharpen7", filter_sharpen7}, {"edges7", filter_edges7}, {"emboss7", filter_emboss7}, - /* 9x9 */ + + /* 9×9 */ {"blur9", filter_blur9}, {"gaussian9", filter_gaussian9}, {"sharpen9", filter_sharpen9}, From d4ee3051705a80bae901641dcf6baf3a6d777ed9 Mon Sep 17 00:00:00 2001 From: Darya Nechaeva Date: Fri, 1 May 2026 13:59:46 +0300 Subject: [PATCH 13/16] feat: add convolution time measurement --- README.md | 14 +++++++++++++- src/main.c | 23 ++++++++++++++++++++++- 2 files changed, 35 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 13145d2..352d082 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ make test # run tests ## Usage ```bash -./conv --filter +./conv --filter [--repeat=N] ``` **Filters**: identity, blur, gaussian, sharpen, edges, emboss @@ -25,3 +25,15 @@ make test # run tests ```bash ./conv photo.jpg result.png --filter edges ``` + +## Performance (sequential, white_cat.jpeg, avg over ×100 runs) + +| Filter | Kernel | Time (ms) | +| -------- | ------ | --------- | +| sharpen | 3×3 | 30.7 | +| sharpen5 | 5×5 | 75.9 | +| sharpen7 | 7×7 | 144.6 | +| sharpen9 | 9×9 | 235.6 | + +Runtime scales roughly as kernel area (k²): 3×3→9×9 gives ~7.7× slowdown vs theoretical 9×. +Single runs show up to 30% variance; repeated runs stabilize within ~2% diff --git a/src/main.c b/src/main.c index 8449ef1..16165eb 100644 --- a/src/main.c +++ b/src/main.c @@ -10,7 +10,9 @@ #include #include +#include #include +#include #define MAX_EXT_LEN 16 #define DEFAULT_JPEG_QUALITY 95 @@ -43,6 +45,17 @@ static int write_image(const char *path, int w, int h, int channels, const uint8 } int main(int argc, char *argv[]) { + int repeat = 1; + for (int i = 1; i < argc; ++i) { + if (strncmp(argv[i], "--repeat=", 9) == 0) { + repeat = atoi(argv[i] + 9); + if (repeat < 1) repeat = 1; + for (int j = i; j < argc - 1; ++j) argv[j] = argv[j + 1]; + argc--; + i--; + } + } + CliConfig cfg; if (cli_parse(argc, argv, &cfg) != 1) { return 1; @@ -84,7 +97,15 @@ int main(int argc, char *argv[]) { Image dst = { .pixels = dst_pixels, .width = (size_t)w, .height = (size_t)h, .channels = src.channels}; - convolve_sequential(&src, &dst, &filter); + struct timespec t0, t1; + clock_gettime(CLOCK_MONOTONIC, &t0); + for (int r = 0; r < repeat; r++) { + convolve_sequential(&src, &dst, &filter); + } + clock_gettime(CLOCK_MONOTONIC, &t1); + double elapsed_ms = + ((t1.tv_sec - t0.tv_sec) * 1000.0 + (t1.tv_nsec - t0.tv_nsec) / 1e6) / repeat; + printf("TIME_MS: %.3f\n", elapsed_ms); if (write_image(cfg.output_path, w, h, dst.channels, dst.pixels) == 0) { fprintf(stderr, "Error: failed to save image to '%s'\n", cfg.output_path); From 73ee91c1c6c2e39048c8caac1e0753a5e0b637f1 Mon Sep 17 00:00:00 2001 From: Darya Nechaeva Date: Fri, 1 May 2026 14:00:35 +0300 Subject: [PATCH 14/16] ci: add format and linter check --- .github/workflows/ci.yml | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index de6c417..a508c0c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -21,4 +21,15 @@ jobs: run: make CC=gcc - name: Run tests - run: make test \ No newline at end of file + run: make test + + - name: Check code formatting + run: | + find src/ -name '*.c' -o -name '*.h' | xargs clang-format --dry-run -Werror + + - name: Generate compile_commands.json + run: bear -- make + + - name: Static analysis + run: | + find src/ -name '*.c' | xargs clang-tidy --quiet From 2b4c882781d9bfa5c606a2702219c82eeae17f48 Mon Sep 17 00:00:00 2001 From: Darya Nechaeva Date: Fri, 1 May 2026 14:00:58 +0300 Subject: [PATCH 15/16] chore: update Makefile --- Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 31d1afd..db0064d 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,6 @@ CC = gcc -CFLAGS = -std=c11 -Wall -Wextra -O2 -Iinclude -Ithird_party/stb +CFLAGS = -std=c11 -Wall -Wextra -O2 -D_POSIX_C_SOURCE=199309L \ +-Iinclude -Ithird_party/stb LDFLAGS = -lm TARGET = conv VPATH = src src/lib From ae52dc9708b867c77a2b8167db78a0a51edb7258 Mon Sep 17 00:00:00 2001 From: Darya Nechaeva Date: Fri, 1 May 2026 14:08:12 +0300 Subject: [PATCH 16/16] ci: update --- .github/workflows/ci.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a508c0c..a705607 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -16,6 +16,7 @@ jobs: run: | sudo apt-get update sudo apt-get install -y build-essential clang libcmocka-dev + sudo apt-get install -y build-essential clang clang-format clang-tidy libcmocka-dev bear - name: Build run: make CC=gcc