Commit Graph

85 Commits

Author SHA1 Message Date
Dominic Szablewski b1b42d14e6 Compute index_pos%64 only once for a 5% performance improvement. 2021-12-19 20:12:50 +01:00
Dominic Szablewski 07fd6c6315 Implement color index as fifo, using a hash table for fast lookup 2021-12-19 15:05:10 +01:00
Dominic Szablewski d8201aa77e
Merge pull request #93 from Cr4xy/master
Add Lua implementation
2021-12-19 11:16:10 +01:00
Cr4xy 9dee61246f Add Lua implementation 2021-12-19 10:54:49 +01:00
Dominic Szablewski aefa0f7a25
Merge pull request #90 from sezero/sign-compare
minor fix for sign-compare warnings.
2021-12-17 12:23:44 +01:00
Ozkan Sezer 4ca3d3ae42 minor fix for sign-compare warnings. 2021-12-17 01:12:20 +03:00
Dominic Szablewski 3a62cabad2 Change padding bytes to a unique stream-end marker; #89 2021-12-16 20:50:19 +01:00
Dominic Szablewski bf6951036d Fix check for valid colorspace 2021-12-16 20:13:52 +01:00
Dominic Szablewski 2f255c7aff Enforce a limit of 400 million pixels, 2GB file size 2021-12-16 20:12:27 +01:00
Dominic Szablewski 11dbe1e6aa Add clang fuzzing harness. Thanks @landaire 2021-12-16 20:02:37 +01:00
Dominic Szablewski ae07396158 Avoid UTF-8 in comments... again. 2021-12-14 21:34:33 +01:00
Dominic Szablewski 0112e3d555 Whitespace, cosmetics 2021-12-14 20:54:37 +01:00
Dominic Szablewski 296f0ef840
Merge pull request #86 from chocolate42/conv-channels
Force rarer PNG encodings to be read by qoiconv as RGBA
2021-12-14 19:19:41 +01:00
Dominic Szablewski 85078d89d6
Merge pull request #85 from chocolate42/bench-channels
Fix qoibench handling of RGB input
2021-12-14 19:19:33 +01:00
Dominic Szablewski 91cc726583 Mention Java implementation; close #59 2021-12-13 17:44:24 +01:00
anon 525f32cefe Convert all non-RGB and non-RGBA input to RGBA. 2021-12-13 16:34:39 +00:00
Dominic Szablewski 873cba791d Merge branch 'schar' 2021-12-13 17:25:55 +01:00
Dominic Szablewski 3973c549dc Remove single line comments to conform to c89 -pedantic 2021-12-13 17:23:04 +01:00
Dominic Szablewski 5983658ad4 Whitespace, wording 2021-12-13 17:16:22 +01:00
anon b743409e06 Fix qoibench to feed RGB input to the encoders when the source image is RGB. Fix rate calculation by having the raw size of RGB input be w x h x 3 instead of w x h x 4. 2021-12-13 15:27:11 +00:00
Ozkan Sezer 2aaba8da96 make qoi.h build using c89 compilers.
also add a QOI_ZEROARR macro, wrapping around memset by default.
2021-12-13 15:56:56 +03:00
Dominic Szablewski 6a95206e35
Merge pull request #84 from xfmoulet/master
Force a RGB source to have an alpha of 255
2021-12-13 11:24:59 +01:00
Xavier-Frédéric Moulet 99fa97792f Revert "Zero-initialize previous pixel color"
This reverts commit 075ab8fe42.
Closes #30
2021-12-13 11:18:41 +01:00
Ozkan Sezer 8c77fad340 change char local vars to signed char
this accomodates toolchains where char type is unsigned by default.
2021-12-11 21:03:37 +03:00
Dominic Szablewski 2ee2169e02
Merge pull request #80 from 0xd34df00d/patch-1
Add a Haskell implementation
2021-12-11 17:29:28 +01:00
0xd34df00d ba5c1711c7
Add a Haskell implementation 2021-12-11 11:22:41 -05:00
Dominic Szablewski e76f25a606 Ignore stb dependencies and build artifacts 2021-12-11 15:49:14 +01:00
Dominic Szablewski 199362ed1d Add note about current specification 2021-12-11 15:48:01 +01:00
Dominic Szablewski 6310d49ee8 Merge branch experimental 2021-12-11 15:46:13 +01:00
Dominic Szablewski c2edcd3d7a Cosmetics 2021-12-11 12:54:01 +01:00
Dominic Szablewski 0ad304d761 Be more specific with the documentation of the file format 2021-12-10 21:31:28 +01:00
Dominic Szablewski 075ab8fe42 Zero-initialize previous pixel color 2021-12-10 20:09:52 +01:00
Dominic Szablewski 03c7ab14d4
Merge pull request #66 from NUlliiON/master
Mention QOI implementation written in C#
2021-12-08 22:47:40 +01:00
Dominic Szablewski d9518a9426
Merge branch 'master' into master 2021-12-08 22:47:32 +01:00
Dominic Szablewski 8f9c24a5e9
Merge pull request #74 from elihwyma/patch-1
Add Swift Implementation
2021-12-08 22:46:43 +01:00
Dominic Szablewski f49dcc074d
Merge branch 'master' into patch-1 2021-12-08 22:46:35 +01:00
Dominic Szablewski a19e0810e6
Merge pull request #68 from rbino/add-qoix
Add Elixir implementation (Qoix) to the implementations section
2021-12-08 22:45:54 +01:00
Amy While 473e467e7b
Add Swift Implementation 2021-12-08 20:22:16 +00:00
Dominic Szablewski 2103168519 Minor encoding throughput improvement 2021-12-08 15:45:18 +01:00
Dominic Szablewski 6a73cc65c5 Wording, whitespace 2021-12-08 15:45:10 +01:00
Dominic Szablewski 92f7ebd3f8 Fix qoi_desc colorspace check 2021-12-08 15:30:56 +01:00
Dominic Szablewski 6c83cf2e0c Increase padding to 8 zero-bytes 2021-12-08 15:29:46 +01:00
Dominic Szablewski 947941fbd0 Change colorspace header to an enum to avoid confusion 2021-12-08 14:14:51 +01:00
Dominic Szablewski d6b1ec673a Add alpha channel to QOI_HASH 2021-12-08 11:30:58 +01:00
Dominic Szablewski eb29269432 Fix typo in documentation 2021-12-08 11:25:24 +01:00
Dominic Szablewski 28954f7a9a Remove QOI_DIFF_16 and QOI_DIFF_24; better tagging of remaining ops; better hash function 2021-12-06 21:23:13 +01:00
Dominic Szablewski 66d12eb078 Add option to only print directory totals 2021-12-06 19:55:39 +01:00
Dominic Szablewski f45f47c9f0 Recursive traversal; compression ratio; grand total; options to disable some features 2021-12-06 13:35:54 +01:00
Riccardo Binetti 259a3a36a0 Add Elixir implementation (Qoix) to the implementations section 2021-12-06 02:46:44 +01:00
Eugene ce32dfed6e Mention QOI implementation written in C# 2021-12-05 14:23:24 -06:00