image_pack 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/CHANGELOG.md +18 -0
- data/LICENSE.txt +21 -0
- data/README.md +140 -0
- data/THIRD_PARTY_NOTICES.md +8 -0
- data/ext/image_pack/extconf.rb +515 -0
- data/ext/image_pack/image_pack.c +1618 -0
- data/ext/image_pack/vendor/.vendored +1 -0
- data/ext/image_pack/vendor/mozjpeg/BUILDING.txt +902 -0
- data/ext/image_pack/vendor/mozjpeg/CMakeLists.txt +1593 -0
- data/ext/image_pack/vendor/mozjpeg/LICENSE.md +132 -0
- data/ext/image_pack/vendor/mozjpeg/README-mozilla.txt +194 -0
- data/ext/image_pack/vendor/mozjpeg/README-turbo.txt +346 -0
- data/ext/image_pack/vendor/mozjpeg/README.ijg +258 -0
- data/ext/image_pack/vendor/mozjpeg/README.md +29 -0
- data/ext/image_pack/vendor/mozjpeg/cderror.h +128 -0
- data/ext/image_pack/vendor/mozjpeg/cdjpeg.c +156 -0
- data/ext/image_pack/vendor/mozjpeg/cdjpeg.h +171 -0
- data/ext/image_pack/vendor/mozjpeg/cjpeg.c +961 -0
- data/ext/image_pack/vendor/mozjpeg/cmyk.h +60 -0
- data/ext/image_pack/vendor/mozjpeg/coderules.txt +78 -0
- data/ext/image_pack/vendor/mozjpeg/croptest.in +95 -0
- data/ext/image_pack/vendor/mozjpeg/djpeg.c +855 -0
- data/ext/image_pack/vendor/mozjpeg/example.txt +464 -0
- data/ext/image_pack/vendor/mozjpeg/jaricom.c +157 -0
- data/ext/image_pack/vendor/mozjpeg/jcapimin.c +307 -0
- data/ext/image_pack/vendor/mozjpeg/jcapistd.c +168 -0
- data/ext/image_pack/vendor/mozjpeg/jcarith.c +972 -0
- data/ext/image_pack/vendor/mozjpeg/jccoefct.c +609 -0
- data/ext/image_pack/vendor/mozjpeg/jccolext.c +144 -0
- data/ext/image_pack/vendor/mozjpeg/jccolor.c +721 -0
- data/ext/image_pack/vendor/mozjpeg/jcdctmgr.c +1776 -0
- data/ext/image_pack/vendor/mozjpeg/jcext.c +219 -0
- data/ext/image_pack/vendor/mozjpeg/jchuff.c +1146 -0
- data/ext/image_pack/vendor/mozjpeg/jchuff.h +57 -0
- data/ext/image_pack/vendor/mozjpeg/jcicc.c +105 -0
- data/ext/image_pack/vendor/mozjpeg/jcinit.c +82 -0
- data/ext/image_pack/vendor/mozjpeg/jcmainct.c +162 -0
- data/ext/image_pack/vendor/mozjpeg/jcmarker.c +844 -0
- data/ext/image_pack/vendor/mozjpeg/jcmaster.c +958 -0
- data/ext/image_pack/vendor/mozjpeg/jcmaster.h +56 -0
- data/ext/image_pack/vendor/mozjpeg/jcomapi.c +109 -0
- data/ext/image_pack/vendor/mozjpeg/jconfig.h.in +37 -0
- data/ext/image_pack/vendor/mozjpeg/jconfig.txt +93 -0
- data/ext/image_pack/vendor/mozjpeg/jconfigint.h.in +44 -0
- data/ext/image_pack/vendor/mozjpeg/jcparam.c +991 -0
- data/ext/image_pack/vendor/mozjpeg/jcphuff.c +1123 -0
- data/ext/image_pack/vendor/mozjpeg/jcprepct.c +351 -0
- data/ext/image_pack/vendor/mozjpeg/jcsample.c +522 -0
- data/ext/image_pack/vendor/mozjpeg/jcstest.c +126 -0
- data/ext/image_pack/vendor/mozjpeg/jctrans.c +408 -0
- data/ext/image_pack/vendor/mozjpeg/jdapimin.c +407 -0
- data/ext/image_pack/vendor/mozjpeg/jdapistd.c +691 -0
- data/ext/image_pack/vendor/mozjpeg/jdarith.c +782 -0
- data/ext/image_pack/vendor/mozjpeg/jdatadst-tj.c +198 -0
- data/ext/image_pack/vendor/mozjpeg/jdatadst.c +299 -0
- data/ext/image_pack/vendor/mozjpeg/jdatasrc-tj.c +194 -0
- data/ext/image_pack/vendor/mozjpeg/jdatasrc.c +295 -0
- data/ext/image_pack/vendor/mozjpeg/jdcoefct.c +881 -0
- data/ext/image_pack/vendor/mozjpeg/jdcoefct.h +83 -0
- data/ext/image_pack/vendor/mozjpeg/jdcol565.c +384 -0
- data/ext/image_pack/vendor/mozjpeg/jdcolext.c +141 -0
- data/ext/image_pack/vendor/mozjpeg/jdcolor.c +881 -0
- data/ext/image_pack/vendor/mozjpeg/jdct.h +208 -0
- data/ext/image_pack/vendor/mozjpeg/jddctmgr.c +367 -0
- data/ext/image_pack/vendor/mozjpeg/jdhuff.c +834 -0
- data/ext/image_pack/vendor/mozjpeg/jdhuff.h +247 -0
- data/ext/image_pack/vendor/mozjpeg/jdicc.c +167 -0
- data/ext/image_pack/vendor/mozjpeg/jdinput.c +408 -0
- data/ext/image_pack/vendor/mozjpeg/jdmainct.c +460 -0
- data/ext/image_pack/vendor/mozjpeg/jdmainct.h +71 -0
- data/ext/image_pack/vendor/mozjpeg/jdmarker.c +1374 -0
- data/ext/image_pack/vendor/mozjpeg/jdmaster.c +727 -0
- data/ext/image_pack/vendor/mozjpeg/jdmaster.h +33 -0
- data/ext/image_pack/vendor/mozjpeg/jdmerge.c +587 -0
- data/ext/image_pack/vendor/mozjpeg/jdmerge.h +47 -0
- data/ext/image_pack/vendor/mozjpeg/jdmrg565.c +354 -0
- data/ext/image_pack/vendor/mozjpeg/jdmrgext.c +184 -0
- data/ext/image_pack/vendor/mozjpeg/jdphuff.c +679 -0
- data/ext/image_pack/vendor/mozjpeg/jdpostct.c +294 -0
- data/ext/image_pack/vendor/mozjpeg/jdsample.c +524 -0
- data/ext/image_pack/vendor/mozjpeg/jdsample.h +50 -0
- data/ext/image_pack/vendor/mozjpeg/jdtrans.c +156 -0
- data/ext/image_pack/vendor/mozjpeg/jerror.c +251 -0
- data/ext/image_pack/vendor/mozjpeg/jerror.h +335 -0
- data/ext/image_pack/vendor/mozjpeg/jfdctflt.c +169 -0
- data/ext/image_pack/vendor/mozjpeg/jfdctfst.c +227 -0
- data/ext/image_pack/vendor/mozjpeg/jfdctint.c +288 -0
- data/ext/image_pack/vendor/mozjpeg/jidctflt.c +240 -0
- data/ext/image_pack/vendor/mozjpeg/jidctfst.c +371 -0
- data/ext/image_pack/vendor/mozjpeg/jidctint.c +2627 -0
- data/ext/image_pack/vendor/mozjpeg/jidctred.c +409 -0
- data/ext/image_pack/vendor/mozjpeg/jinclude.h +147 -0
- data/ext/image_pack/vendor/mozjpeg/jmemmgr.c +1180 -0
- data/ext/image_pack/vendor/mozjpeg/jmemnobs.c +110 -0
- data/ext/image_pack/vendor/mozjpeg/jmemsys.h +178 -0
- data/ext/image_pack/vendor/mozjpeg/jmorecfg.h +382 -0
- data/ext/image_pack/vendor/mozjpeg/jpeg_nbits_table.h +4098 -0
- data/ext/image_pack/vendor/mozjpeg/jpegcomp.h +32 -0
- data/ext/image_pack/vendor/mozjpeg/jpegint.h +453 -0
- data/ext/image_pack/vendor/mozjpeg/jpeglib.h +1211 -0
- data/ext/image_pack/vendor/mozjpeg/jpegtran.c +827 -0
- data/ext/image_pack/vendor/mozjpeg/jpegyuv.c +172 -0
- data/ext/image_pack/vendor/mozjpeg/jquant1.c +856 -0
- data/ext/image_pack/vendor/mozjpeg/jquant2.c +1286 -0
- data/ext/image_pack/vendor/mozjpeg/jsimd.h +123 -0
- data/ext/image_pack/vendor/mozjpeg/jsimd_none.c +431 -0
- data/ext/image_pack/vendor/mozjpeg/jsimddct.h +70 -0
- data/ext/image_pack/vendor/mozjpeg/jstdhuff.c +144 -0
- data/ext/image_pack/vendor/mozjpeg/jutils.c +133 -0
- data/ext/image_pack/vendor/mozjpeg/jversion.h.in +56 -0
- data/ext/image_pack/vendor/mozjpeg/libjpeg.map.in +11 -0
- data/ext/image_pack/vendor/mozjpeg/libjpeg.txt +3150 -0
- data/ext/image_pack/vendor/mozjpeg/rdbmp.c +690 -0
- data/ext/image_pack/vendor/mozjpeg/rdcolmap.c +253 -0
- data/ext/image_pack/vendor/mozjpeg/rdgif.c +720 -0
- data/ext/image_pack/vendor/mozjpeg/rdjpeg.c +160 -0
- data/ext/image_pack/vendor/mozjpeg/rdjpgcom.c +494 -0
- data/ext/image_pack/vendor/mozjpeg/rdpng.c +194 -0
- data/ext/image_pack/vendor/mozjpeg/rdppm.c +781 -0
- data/ext/image_pack/vendor/mozjpeg/rdswitch.c +642 -0
- data/ext/image_pack/vendor/mozjpeg/rdtarga.c +508 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/aarch32/jccolext-neon.c +148 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/aarch32/jchuff-neon.c +334 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/aarch32/jsimd.c +976 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/aarch32/jsimd_neon.S +1200 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/aarch64/jccolext-neon.c +316 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/aarch64/jchuff-neon.c +411 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/aarch64/jsimd.c +1053 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/aarch64/jsimd_neon.S +2254 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/align.h +28 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/jccolor-neon.c +160 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/jcgray-neon.c +120 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/jcgryext-neon.c +106 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/jchuff.h +131 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/jcphuff-neon.c +623 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/jcsample-neon.c +192 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/jdcolext-neon.c +374 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/jdcolor-neon.c +141 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/jdmerge-neon.c +144 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/jdmrgext-neon.c +723 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/jdsample-neon.c +569 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/jfdctfst-neon.c +214 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/jfdctint-neon.c +376 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/jidctfst-neon.c +472 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/jidctint-neon.c +801 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/jidctred-neon.c +486 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/jquanti-neon.c +193 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/neon-compat.h +26 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/neon-compat.h.in +37 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jccolext-avx2.asm +578 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jccolext-mmx.asm +476 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jccolext-sse2.asm +503 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jccolor-avx2.asm +121 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jccolor-mmx.asm +121 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jccolor-sse2.asm +120 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jcgray-avx2.asm +113 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jcgray-mmx.asm +113 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jcgray-sse2.asm +112 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jcgryext-avx2.asm +457 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jcgryext-mmx.asm +355 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jcgryext-sse2.asm +382 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jchuff-sse2.asm +761 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jcphuff-sse2.asm +662 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jcsample-avx2.asm +388 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jcsample-mmx.asm +324 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jcsample-sse2.asm +351 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jdcolext-avx2.asm +515 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jdcolext-mmx.asm +404 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jdcolext-sse2.asm +458 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jdcolor-avx2.asm +118 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jdcolor-mmx.asm +117 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jdcolor-sse2.asm +117 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jdmerge-avx2.asm +136 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jdmerge-mmx.asm +123 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jdmerge-sse2.asm +135 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jdmrgext-avx2.asm +575 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jdmrgext-mmx.asm +460 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jdmrgext-sse2.asm +517 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jdsample-avx2.asm +760 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jdsample-mmx.asm +731 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jdsample-sse2.asm +724 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jfdctflt-3dn.asm +318 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jfdctflt-sse.asm +369 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jfdctfst-mmx.asm +395 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jfdctfst-sse2.asm +403 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jfdctint-avx2.asm +331 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jfdctint-mmx.asm +620 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jfdctint-sse2.asm +633 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jidctflt-3dn.asm +451 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jidctflt-sse.asm +571 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jidctflt-sse2.asm +497 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jidctfst-mmx.asm +499 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jidctfst-sse2.asm +501 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jidctint-avx2.asm +453 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jidctint-mmx.asm +851 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jidctint-sse2.asm +858 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jidctred-mmx.asm +704 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jidctred-sse2.asm +592 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jquant-3dn.asm +230 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jquant-mmx.asm +276 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jquant-sse.asm +208 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jquantf-sse2.asm +168 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jquanti-avx2.asm +188 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jquanti-sse2.asm +201 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jsimd.c +1312 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jsimdcpu.asm +135 -0
- data/ext/image_pack/vendor/mozjpeg/simd/jsimd.h +1258 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips/jsimd.c +1143 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips/jsimd_dspr2.S +4543 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips/jsimd_dspr2_asm.h +292 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jccolext-mmi.c +455 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jccolor-mmi.c +148 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jcgray-mmi.c +132 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jcgryext-mmi.c +374 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jcsample-mmi.c +98 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jcsample.h +28 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jdcolext-mmi.c +415 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jdcolor-mmi.c +139 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jdmerge-mmi.c +149 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jdmrgext-mmi.c +615 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jdsample-mmi.c +304 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jfdctfst-mmi.c +255 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jfdctint-mmi.c +398 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jidctfst-mmi.c +395 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jidctint-mmi.c +571 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jquanti-mmi.c +124 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jsimd.c +866 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jsimd_mmi.h +69 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/loongson-mmintrin.h +1334 -0
- data/ext/image_pack/vendor/mozjpeg/simd/nasm/jcolsamp.inc +135 -0
- data/ext/image_pack/vendor/mozjpeg/simd/nasm/jdct.inc +31 -0
- data/ext/image_pack/vendor/mozjpeg/simd/nasm/jsimdcfg.inc +93 -0
- data/ext/image_pack/vendor/mozjpeg/simd/nasm/jsimdcfg.inc.h +133 -0
- data/ext/image_pack/vendor/mozjpeg/simd/nasm/jsimdext.inc +520 -0
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jccolext-altivec.c +269 -0
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jccolor-altivec.c +116 -0
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jcgray-altivec.c +111 -0
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jcgryext-altivec.c +228 -0
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jcsample-altivec.c +159 -0
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jcsample.h +28 -0
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jdcolext-altivec.c +276 -0
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jdcolor-altivec.c +106 -0
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jdmerge-altivec.c +130 -0
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jdmrgext-altivec.c +329 -0
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jdsample-altivec.c +400 -0
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jfdctfst-altivec.c +154 -0
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jfdctint-altivec.c +258 -0
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jidctfst-altivec.c +255 -0
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jidctint-altivec.c +357 -0
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jquanti-altivec.c +250 -0
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jsimd.c +884 -0
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jsimd_altivec.h +98 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jccolext-avx2.asm +559 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jccolext-sse2.asm +484 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jccolor-avx2.asm +121 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jccolor-sse2.asm +120 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jcgray-avx2.asm +113 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jcgray-sse2.asm +112 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jcgryext-avx2.asm +438 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jcgryext-sse2.asm +363 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jchuff-sse2.asm +583 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jcphuff-sse2.asm +639 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jcsample-avx2.asm +367 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jcsample-sse2.asm +330 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jdcolext-avx2.asm +496 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jdcolext-sse2.asm +439 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jdcolor-avx2.asm +118 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jdcolor-sse2.asm +117 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jdmerge-avx2.asm +136 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jdmerge-sse2.asm +135 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jdmrgext-avx2.asm +596 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jdmrgext-sse2.asm +538 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jdsample-avx2.asm +696 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jdsample-sse2.asm +665 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jfdctflt-sse.asm +355 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jfdctfst-sse2.asm +389 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jfdctint-avx2.asm +320 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jfdctint-sse2.asm +619 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jidctflt-sse2.asm +482 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jidctfst-sse2.asm +491 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jidctint-avx2.asm +418 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jidctint-sse2.asm +847 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jidctred-sse2.asm +574 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jquantf-sse2.asm +155 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jquanti-avx2.asm +163 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jquanti-sse2.asm +188 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jsimd.c +1110 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jsimdcpu.asm +86 -0
- data/ext/image_pack/vendor/mozjpeg/strtest.c +170 -0
- data/ext/image_pack/vendor/mozjpeg/structure.txt +900 -0
- data/ext/image_pack/vendor/mozjpeg/tjbench.c +1044 -0
- data/ext/image_pack/vendor/mozjpeg/tjbenchtest.in +256 -0
- data/ext/image_pack/vendor/mozjpeg/tjbenchtest.java.in +215 -0
- data/ext/image_pack/vendor/mozjpeg/tjexample.c +406 -0
- data/ext/image_pack/vendor/mozjpeg/tjexampletest.in +149 -0
- data/ext/image_pack/vendor/mozjpeg/tjexampletest.java.in +151 -0
- data/ext/image_pack/vendor/mozjpeg/tjunittest.c +961 -0
- data/ext/image_pack/vendor/mozjpeg/tjutil.c +70 -0
- data/ext/image_pack/vendor/mozjpeg/tjutil.h +53 -0
- data/ext/image_pack/vendor/mozjpeg/transupp.c +2373 -0
- data/ext/image_pack/vendor/mozjpeg/transupp.h +243 -0
- data/ext/image_pack/vendor/mozjpeg/turbojpeg-jni.c +1259 -0
- data/ext/image_pack/vendor/mozjpeg/turbojpeg.c +2320 -0
- data/ext/image_pack/vendor/mozjpeg/turbojpeg.h +1784 -0
- data/ext/image_pack/vendor/mozjpeg/usage.txt +679 -0
- data/ext/image_pack/vendor/mozjpeg/wizard.txt +220 -0
- data/ext/image_pack/vendor/mozjpeg/wrbmp.c +552 -0
- data/ext/image_pack/vendor/mozjpeg/wrgif.c +580 -0
- data/ext/image_pack/vendor/mozjpeg/wrjpgcom.c +577 -0
- data/ext/image_pack/vendor/mozjpeg/wrppm.c +366 -0
- data/ext/image_pack/vendor/mozjpeg/wrtarga.c +258 -0
- data/ext/image_pack/vendor/mozjpeg/yuvjpeg.c +268 -0
- data/lib/image_pack/backend.rb +8 -0
- data/lib/image_pack/configuration.rb +23 -0
- data/lib/image_pack/errors.rb +13 -0
- data/lib/image_pack/version.rb +5 -0
- data/lib/image_pack.rb +208 -0
- metadata +433 -0
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* cmyk.h
|
|
3
|
+
*
|
|
4
|
+
* Copyright (C) 2017-2018, D. R. Commander.
|
|
5
|
+
* For conditions of distribution and use, see the accompanying README.ijg
|
|
6
|
+
* file.
|
|
7
|
+
*
|
|
8
|
+
* This file contains convenience functions for performing quick & dirty
|
|
9
|
+
* CMYK<->RGB conversion. This algorithm is suitable for testing purposes
|
|
10
|
+
* only. Properly converting between CMYK and RGB requires a color management
|
|
11
|
+
* system.
|
|
12
|
+
*/
|
|
13
|
+
|
|
14
|
+
#ifndef CMYK_H
|
|
15
|
+
#define CMYK_H
|
|
16
|
+
|
|
17
|
+
#include <jinclude.h>
|
|
18
|
+
#define JPEG_INTERNALS
|
|
19
|
+
#include <jpeglib.h>
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
/* Fully reversible */
|
|
23
|
+
|
|
24
|
+
INLINE
|
|
25
|
+
LOCAL(void)
|
|
26
|
+
rgb_to_cmyk(JSAMPLE r, JSAMPLE g, JSAMPLE b, JSAMPLE *c, JSAMPLE *m,
|
|
27
|
+
JSAMPLE *y, JSAMPLE *k)
|
|
28
|
+
{
|
|
29
|
+
double ctmp = 1.0 - ((double)r / 255.0);
|
|
30
|
+
double mtmp = 1.0 - ((double)g / 255.0);
|
|
31
|
+
double ytmp = 1.0 - ((double)b / 255.0);
|
|
32
|
+
double ktmp = MIN(MIN(ctmp, mtmp), ytmp);
|
|
33
|
+
|
|
34
|
+
if (ktmp == 1.0) ctmp = mtmp = ytmp = 0.0;
|
|
35
|
+
else {
|
|
36
|
+
ctmp = (ctmp - ktmp) / (1.0 - ktmp);
|
|
37
|
+
mtmp = (mtmp - ktmp) / (1.0 - ktmp);
|
|
38
|
+
ytmp = (ytmp - ktmp) / (1.0 - ktmp);
|
|
39
|
+
}
|
|
40
|
+
*c = (JSAMPLE)(255.0 - ctmp * 255.0 + 0.5);
|
|
41
|
+
*m = (JSAMPLE)(255.0 - mtmp * 255.0 + 0.5);
|
|
42
|
+
*y = (JSAMPLE)(255.0 - ytmp * 255.0 + 0.5);
|
|
43
|
+
*k = (JSAMPLE)(255.0 - ktmp * 255.0 + 0.5);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
/* Fully reversible only for C/M/Y/K values generated with rgb_to_cmyk() */
|
|
48
|
+
|
|
49
|
+
INLINE
|
|
50
|
+
LOCAL(void)
|
|
51
|
+
cmyk_to_rgb(JSAMPLE c, JSAMPLE m, JSAMPLE y, JSAMPLE k, JSAMPLE *r, JSAMPLE *g,
|
|
52
|
+
JSAMPLE *b)
|
|
53
|
+
{
|
|
54
|
+
*r = (JSAMPLE)((double)c * (double)k / 255.0 + 0.5);
|
|
55
|
+
*g = (JSAMPLE)((double)m * (double)k / 255.0 + 0.5);
|
|
56
|
+
*b = (JSAMPLE)((double)y * (double)k / 255.0 + 0.5);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
#endif /* CMYK_H */
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
IJG JPEG LIBRARY: CODING RULES
|
|
2
|
+
|
|
3
|
+
This file was part of the Independent JPEG Group's software:
|
|
4
|
+
Copyright (C) 1991-1996, Thomas G. Lane.
|
|
5
|
+
It was modified by The libjpeg-turbo Project to include only information
|
|
6
|
+
relevant to libjpeg-turbo.
|
|
7
|
+
For conditions of distribution and use, see the accompanying README.ijg file.
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
Since numerous people will be contributing code and bug fixes, it's important
|
|
11
|
+
to establish a common coding style. The goal of using similar coding styles
|
|
12
|
+
is much more important than the details of just what that style is.
|
|
13
|
+
|
|
14
|
+
In general we follow the recommendations of "Recommended C Style and Coding
|
|
15
|
+
Standards" revision 6.1 (Cannon et al. as modified by Spencer, Keppel and
|
|
16
|
+
Brader). This document is available in the IJG FTP archive (see
|
|
17
|
+
jpeg/doc/cstyle.ms.tbl.Z, or cstyle.txt.Z for those without nroff/tbl).
|
|
18
|
+
|
|
19
|
+
Block comments should be laid out thusly:
|
|
20
|
+
|
|
21
|
+
/*
|
|
22
|
+
* Block comments in this style.
|
|
23
|
+
*/
|
|
24
|
+
|
|
25
|
+
We indent statements in K&R style, e.g.,
|
|
26
|
+
if (test) {
|
|
27
|
+
then-part;
|
|
28
|
+
} else {
|
|
29
|
+
else-part;
|
|
30
|
+
}
|
|
31
|
+
with two spaces per indentation level. (This indentation convention is
|
|
32
|
+
handled automatically by GNU Emacs and many other text editors.)
|
|
33
|
+
|
|
34
|
+
Multi-word names should be written in lower case with underscores, e.g.,
|
|
35
|
+
multi_word_name (not multiWordName). Preprocessor symbols and enum constants
|
|
36
|
+
are similar but upper case (MULTI_WORD_NAME). Names should be unique within
|
|
37
|
+
the first fifteen characters.
|
|
38
|
+
|
|
39
|
+
Note that each function definition must begin with GLOBAL(type), LOCAL(type),
|
|
40
|
+
or METHODDEF(type). These macros expand to "static type" or just "type" as
|
|
41
|
+
appropriate. They provide a readable indication of the routine's usage and
|
|
42
|
+
can readily be changed for special needs. (For instance, special linkage
|
|
43
|
+
keywords can be inserted for use in Windows DLLs.)
|
|
44
|
+
|
|
45
|
+
A similar solution is used for external function declarations (see the EXTERN
|
|
46
|
+
macro.)
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
The JPEG library is intended to be used within larger programs. Furthermore,
|
|
50
|
+
we want it to be reentrant so that it can be used by applications that process
|
|
51
|
+
multiple images concurrently. The following rules support these requirements:
|
|
52
|
+
|
|
53
|
+
1. Avoid direct use of file I/O, "malloc", error report printouts, etc;
|
|
54
|
+
pass these through the common routines provided.
|
|
55
|
+
|
|
56
|
+
2. Minimize global namespace pollution. Functions should be declared static
|
|
57
|
+
wherever possible. (Note that our method-based calling conventions help this
|
|
58
|
+
a lot: in many modules only the initialization function will ever need to be
|
|
59
|
+
called directly, so only that function need be externally visible.) All
|
|
60
|
+
global function names should begin with "jpeg_".
|
|
61
|
+
|
|
62
|
+
3. Don't use global variables; anything that must be used in another module
|
|
63
|
+
should be in the common data structures.
|
|
64
|
+
|
|
65
|
+
4. Don't use static variables except for read-only constant tables. Variables
|
|
66
|
+
that should be private to a module can be placed into private structures (see
|
|
67
|
+
the system architecture document, structure.txt).
|
|
68
|
+
|
|
69
|
+
5. Source file names should begin with "j" for files that are part of the
|
|
70
|
+
library proper; source files that are not part of the library, such as cjpeg.c
|
|
71
|
+
and djpeg.c, do not begin with "j". Keep compression and decompression code in
|
|
72
|
+
separate source files --- some applications may want only one half of the
|
|
73
|
+
library.
|
|
74
|
+
|
|
75
|
+
Note: these rules (particularly #4) are not followed religiously in the
|
|
76
|
+
modules that are used in cjpeg/djpeg but are not part of the JPEG library
|
|
77
|
+
proper. Those modules are not really intended to be used in other
|
|
78
|
+
applications.
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
|
|
3
|
+
set -u
|
|
4
|
+
set -e
|
|
5
|
+
trap onexit INT
|
|
6
|
+
trap onexit TERM
|
|
7
|
+
trap onexit EXIT
|
|
8
|
+
|
|
9
|
+
onexit()
|
|
10
|
+
{
|
|
11
|
+
if [ -d $OUTDIR ]; then
|
|
12
|
+
rm -rf $OUTDIR
|
|
13
|
+
fi
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
runme()
|
|
17
|
+
{
|
|
18
|
+
echo \*\*\* $*
|
|
19
|
+
$*
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
IMAGE=vgl_6548_0026a.bmp
|
|
23
|
+
WIDTH=128
|
|
24
|
+
HEIGHT=95
|
|
25
|
+
IMGDIR=@CMAKE_CURRENT_SOURCE_DIR@/testimages
|
|
26
|
+
OUTDIR=`mktemp -d /tmp/__croptest_output.XXXXXX`
|
|
27
|
+
EXEDIR=@CMAKE_CURRENT_BINARY_DIR@
|
|
28
|
+
|
|
29
|
+
if [ -d $OUTDIR ]; then
|
|
30
|
+
rm -rf $OUTDIR
|
|
31
|
+
fi
|
|
32
|
+
mkdir -p $OUTDIR
|
|
33
|
+
|
|
34
|
+
exec >$EXEDIR/croptest.log
|
|
35
|
+
|
|
36
|
+
echo "============================================================"
|
|
37
|
+
echo "$IMAGE ($WIDTH x $HEIGHT)"
|
|
38
|
+
echo "============================================================"
|
|
39
|
+
echo
|
|
40
|
+
|
|
41
|
+
for PROGARG in "" -progressive; do
|
|
42
|
+
|
|
43
|
+
cp $IMGDIR/$IMAGE $OUTDIR
|
|
44
|
+
basename=`basename $IMAGE .bmp`
|
|
45
|
+
echo "------------------------------------------------------------"
|
|
46
|
+
echo "Generating test images"
|
|
47
|
+
echo "------------------------------------------------------------"
|
|
48
|
+
echo
|
|
49
|
+
runme $EXEDIR/cjpeg $PROGARG -grayscale -outfile $OUTDIR/${basename}_GRAY.jpg $IMGDIR/${basename}.bmp
|
|
50
|
+
runme $EXEDIR/cjpeg $PROGARG -sample 2x2 -outfile $OUTDIR/${basename}_420.jpg $IMGDIR/${basename}.bmp
|
|
51
|
+
runme $EXEDIR/cjpeg $PROGARG -sample 2x1 -outfile $OUTDIR/${basename}_422.jpg $IMGDIR/${basename}.bmp
|
|
52
|
+
runme $EXEDIR/cjpeg $PROGARG -sample 1x2 -outfile $OUTDIR/${basename}_440.jpg $IMGDIR/${basename}.bmp
|
|
53
|
+
runme $EXEDIR/cjpeg $PROGARG -sample 1x1 -outfile $OUTDIR/${basename}_444.jpg $IMGDIR/${basename}.bmp
|
|
54
|
+
echo
|
|
55
|
+
|
|
56
|
+
for NSARG in "" -nosmooth; do
|
|
57
|
+
|
|
58
|
+
for COLORSARG in "" "-colors 256 -dither none -onepass"; do
|
|
59
|
+
|
|
60
|
+
for Y in {0..16}; do
|
|
61
|
+
|
|
62
|
+
for H in {1..16}; do
|
|
63
|
+
|
|
64
|
+
X=$(( (Y*16)%128 ))
|
|
65
|
+
W=$(( WIDTH-X-7 ))
|
|
66
|
+
if [ $Y -le 15 ]; then
|
|
67
|
+
CROPSPEC="${W}x${H}+${X}+${Y}"
|
|
68
|
+
else
|
|
69
|
+
Y2=$(( HEIGHT-H ));
|
|
70
|
+
CROPSPEC="${W}x${H}+${X}+${Y2}"
|
|
71
|
+
fi
|
|
72
|
+
|
|
73
|
+
echo "------------------------------------------------------------"
|
|
74
|
+
echo $PROGARG $NSARG $COLORSARG -crop $CROPSPEC
|
|
75
|
+
echo "------------------------------------------------------------"
|
|
76
|
+
echo
|
|
77
|
+
for samp in GRAY 420 422 440 444; do
|
|
78
|
+
$EXEDIR/djpeg $NSARG $COLORSARG -rgb -outfile $OUTDIR/${basename}_${samp}_full.ppm $OUTDIR/${basename}_${samp}.jpg
|
|
79
|
+
convert -crop $CROPSPEC $OUTDIR/${basename}_${samp}_full.ppm $OUTDIR/${basename}_${samp}_ref.ppm
|
|
80
|
+
runme $EXEDIR/djpeg $NSARG $COLORSARG -crop $CROPSPEC -rgb -outfile $OUTDIR/${basename}_${samp}.ppm $OUTDIR/${basename}_${samp}.jpg
|
|
81
|
+
runme cmp $OUTDIR/${basename}_${samp}.ppm $OUTDIR/${basename}_${samp}_ref.ppm
|
|
82
|
+
done
|
|
83
|
+
echo
|
|
84
|
+
|
|
85
|
+
done
|
|
86
|
+
|
|
87
|
+
done
|
|
88
|
+
|
|
89
|
+
done
|
|
90
|
+
|
|
91
|
+
done
|
|
92
|
+
|
|
93
|
+
done
|
|
94
|
+
|
|
95
|
+
echo SUCCESS!
|