rfreeimage 0.1.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/LICENSE +21 -0
- data/README.md +1 -0
- data/Rakefile +34 -0
- data/ext/rfreeimage/extconf.rb +35 -0
- data/ext/rfreeimage/rfi_main.c +389 -0
- data/lib/rfreeimage/image.rb +26 -0
- data/lib/rfreeimage/version.rb +3 -0
- data/lib/rfreeimage.rb +3 -0
- data/rfreeimage.gemspec +32 -0
- data/vendor/FreeImage/Makefile +34 -0
- data/vendor/FreeImage/Makefile.cygwin +74 -0
- data/vendor/FreeImage/Makefile.fip +84 -0
- data/vendor/FreeImage/Makefile.gnu +83 -0
- data/vendor/FreeImage/Makefile.iphone +96 -0
- data/vendor/FreeImage/Makefile.mingw +136 -0
- data/vendor/FreeImage/Makefile.osx +115 -0
- data/vendor/FreeImage/Makefile.solaris +66 -0
- data/vendor/FreeImage/Makefile.srcs +6 -0
- data/vendor/FreeImage/README.iphone +19 -0
- data/vendor/FreeImage/README.linux +50 -0
- data/vendor/FreeImage/README.minGW +236 -0
- data/vendor/FreeImage/README.osx +44 -0
- data/vendor/FreeImage/README.solaris +67 -0
- data/vendor/FreeImage/Source/CacheFile.h +92 -0
- data/vendor/FreeImage/Source/DeprecationManager/Deprecated.cpp +36 -0
- data/vendor/FreeImage/Source/DeprecationManager/DeprecationMgr.cpp +103 -0
- data/vendor/FreeImage/Source/DeprecationManager/DeprecationMgr.h +83 -0
- data/vendor/FreeImage/Source/FreeImage/BitmapAccess.cpp +1573 -0
- data/vendor/FreeImage/Source/FreeImage/CacheFile.cpp +271 -0
- data/vendor/FreeImage/Source/FreeImage/ColorLookup.cpp +785 -0
- data/vendor/FreeImage/Source/FreeImage/Conversion.cpp +551 -0
- data/vendor/FreeImage/Source/FreeImage/Conversion16_555.cpp +209 -0
- data/vendor/FreeImage/Source/FreeImage/Conversion16_565.cpp +204 -0
- data/vendor/FreeImage/Source/FreeImage/Conversion24.cpp +252 -0
- data/vendor/FreeImage/Source/FreeImage/Conversion32.cpp +345 -0
- data/vendor/FreeImage/Source/FreeImage/Conversion4.cpp +246 -0
- data/vendor/FreeImage/Source/FreeImage/Conversion8.cpp +305 -0
- data/vendor/FreeImage/Source/FreeImage/ConversionFloat.cpp +194 -0
- data/vendor/FreeImage/Source/FreeImage/ConversionRGB16.cpp +144 -0
- data/vendor/FreeImage/Source/FreeImage/ConversionRGBA16.cpp +147 -0
- data/vendor/FreeImage/Source/FreeImage/ConversionRGBAF.cpp +250 -0
- data/vendor/FreeImage/Source/FreeImage/ConversionRGBF.cpp +243 -0
- data/vendor/FreeImage/Source/FreeImage/ConversionType.cpp +699 -0
- data/vendor/FreeImage/Source/FreeImage/ConversionUINT16.cpp +134 -0
- data/vendor/FreeImage/Source/FreeImage/FreeImage.cpp +226 -0
- data/vendor/FreeImage/Source/FreeImage/FreeImageC.c +22 -0
- data/vendor/FreeImage/Source/FreeImage/FreeImageIO.cpp +175 -0
- data/vendor/FreeImage/Source/FreeImage/GetType.cpp +92 -0
- data/vendor/FreeImage/Source/FreeImage/Halftoning.cpp +474 -0
- data/vendor/FreeImage/Source/FreeImage/J2KHelper.cpp +591 -0
- data/vendor/FreeImage/Source/FreeImage/J2KHelper.h +36 -0
- data/vendor/FreeImage/Source/FreeImage/LFPQuantizer.cpp +208 -0
- data/vendor/FreeImage/Source/FreeImage/MNGHelper.cpp +1320 -0
- data/vendor/FreeImage/Source/FreeImage/MemoryIO.cpp +237 -0
- data/vendor/FreeImage/Source/FreeImage/MultiPage.cpp +974 -0
- data/vendor/FreeImage/Source/FreeImage/NNQuantizer.cpp +507 -0
- data/vendor/FreeImage/Source/FreeImage/PSDParser.cpp +1057 -0
- data/vendor/FreeImage/Source/FreeImage/PSDParser.h +271 -0
- data/vendor/FreeImage/Source/FreeImage/PixelAccess.cpp +197 -0
- data/vendor/FreeImage/Source/FreeImage/Plugin.cpp +822 -0
- data/vendor/FreeImage/Source/FreeImage/PluginBMP.cpp +1494 -0
- data/vendor/FreeImage/Source/FreeImage/PluginCUT.cpp +240 -0
- data/vendor/FreeImage/Source/FreeImage/PluginDDS.cpp +655 -0
- data/vendor/FreeImage/Source/FreeImage/PluginEXR.cpp +773 -0
- data/vendor/FreeImage/Source/FreeImage/PluginG3.cpp +433 -0
- data/vendor/FreeImage/Source/FreeImage/PluginGIF.cpp +1407 -0
- data/vendor/FreeImage/Source/FreeImage/PluginHDR.cpp +722 -0
- data/vendor/FreeImage/Source/FreeImage/PluginICO.cpp +824 -0
- data/vendor/FreeImage/Source/FreeImage/PluginIFF.cpp +459 -0
- data/vendor/FreeImage/Source/FreeImage/PluginJ2K.cpp +328 -0
- data/vendor/FreeImage/Source/FreeImage/PluginJNG.cpp +162 -0
- data/vendor/FreeImage/Source/FreeImage/PluginJP2.cpp +328 -0
- data/vendor/FreeImage/Source/FreeImage/PluginJPEG.cpp +1706 -0
- data/vendor/FreeImage/Source/FreeImage/PluginJXR.cpp +1475 -0
- data/vendor/FreeImage/Source/FreeImage/PluginKOALA.cpp +243 -0
- data/vendor/FreeImage/Source/FreeImage/PluginMNG.cpp +153 -0
- data/vendor/FreeImage/Source/FreeImage/PluginPCD.cpp +251 -0
- data/vendor/FreeImage/Source/FreeImage/PluginPCX.cpp +659 -0
- data/vendor/FreeImage/Source/FreeImage/PluginPFM.cpp +409 -0
- data/vendor/FreeImage/Source/FreeImage/PluginPICT.cpp +1343 -0
- data/vendor/FreeImage/Source/FreeImage/PluginPNG.cpp +1115 -0
- data/vendor/FreeImage/Source/FreeImage/PluginPNM.cpp +838 -0
- data/vendor/FreeImage/Source/FreeImage/PluginPSD.cpp +131 -0
- data/vendor/FreeImage/Source/FreeImage/PluginRAS.cpp +512 -0
- data/vendor/FreeImage/Source/FreeImage/PluginRAW.cpp +793 -0
- data/vendor/FreeImage/Source/FreeImage/PluginSGI.cpp +425 -0
- data/vendor/FreeImage/Source/FreeImage/PluginTARGA.cpp +1591 -0
- data/vendor/FreeImage/Source/FreeImage/PluginTIFF.cpp +2631 -0
- data/vendor/FreeImage/Source/FreeImage/PluginWBMP.cpp +372 -0
- data/vendor/FreeImage/Source/FreeImage/PluginWebP.cpp +698 -0
- data/vendor/FreeImage/Source/FreeImage/PluginXBM.cpp +399 -0
- data/vendor/FreeImage/Source/FreeImage/PluginXPM.cpp +487 -0
- data/vendor/FreeImage/Source/FreeImage/TIFFLogLuv.cpp +65 -0
- data/vendor/FreeImage/Source/FreeImage/ToneMapping.cpp +75 -0
- data/vendor/FreeImage/Source/FreeImage/WuQuantizer.cpp +559 -0
- data/vendor/FreeImage/Source/FreeImage/ZLibInterface.cpp +223 -0
- data/vendor/FreeImage/Source/FreeImage/tmoColorConvert.cpp +479 -0
- data/vendor/FreeImage/Source/FreeImage/tmoDrago03.cpp +295 -0
- data/vendor/FreeImage/Source/FreeImage/tmoFattal02.cpp +689 -0
- data/vendor/FreeImage/Source/FreeImage/tmoReinhard05.cpp +260 -0
- data/vendor/FreeImage/Source/FreeImage.h +1153 -0
- data/vendor/FreeImage/Source/FreeImageIO.h +63 -0
- data/vendor/FreeImage/Source/FreeImageToolkit/BSplineRotate.cpp +730 -0
- data/vendor/FreeImage/Source/FreeImageToolkit/Background.cpp +895 -0
- data/vendor/FreeImage/Source/FreeImageToolkit/Channels.cpp +488 -0
- data/vendor/FreeImage/Source/FreeImageToolkit/ClassicRotate.cpp +917 -0
- data/vendor/FreeImage/Source/FreeImageToolkit/Colors.cpp +967 -0
- data/vendor/FreeImage/Source/FreeImageToolkit/CopyPaste.cpp +861 -0
- data/vendor/FreeImage/Source/FreeImageToolkit/Display.cpp +230 -0
- data/vendor/FreeImage/Source/FreeImageToolkit/Filters.h +287 -0
- data/vendor/FreeImage/Source/FreeImageToolkit/Flip.cpp +166 -0
- data/vendor/FreeImage/Source/FreeImageToolkit/JPEGTransform.cpp +623 -0
- data/vendor/FreeImage/Source/FreeImageToolkit/MultigridPoissonSolver.cpp +505 -0
- data/vendor/FreeImage/Source/FreeImageToolkit/Rescale.cpp +192 -0
- data/vendor/FreeImage/Source/FreeImageToolkit/Resize.cpp +2116 -0
- data/vendor/FreeImage/Source/FreeImageToolkit/Resize.h +196 -0
- data/vendor/FreeImage/Source/LibJPEG/ansi2knr.c +739 -0
- data/vendor/FreeImage/Source/LibJPEG/cderror.h +134 -0
- data/vendor/FreeImage/Source/LibJPEG/cdjpeg.c +181 -0
- data/vendor/FreeImage/Source/LibJPEG/cdjpeg.h +187 -0
- data/vendor/FreeImage/Source/LibJPEG/cjpeg.c +664 -0
- data/vendor/FreeImage/Source/LibJPEG/ckconfig.c +402 -0
- data/vendor/FreeImage/Source/LibJPEG/djpeg.c +617 -0
- data/vendor/FreeImage/Source/LibJPEG/example.c +433 -0
- data/vendor/FreeImage/Source/LibJPEG/jaricom.c +153 -0
- data/vendor/FreeImage/Source/LibJPEG/jcapimin.c +288 -0
- data/vendor/FreeImage/Source/LibJPEG/jcapistd.c +162 -0
- data/vendor/FreeImage/Source/LibJPEG/jcarith.c +944 -0
- data/vendor/FreeImage/Source/LibJPEG/jccoefct.c +454 -0
- data/vendor/FreeImage/Source/LibJPEG/jccolor.c +604 -0
- data/vendor/FreeImage/Source/LibJPEG/jcdctmgr.c +477 -0
- data/vendor/FreeImage/Source/LibJPEG/jchuff.c +1573 -0
- data/vendor/FreeImage/Source/LibJPEG/jcinit.c +84 -0
- data/vendor/FreeImage/Source/LibJPEG/jcmainct.c +297 -0
- data/vendor/FreeImage/Source/LibJPEG/jcmarker.c +719 -0
- data/vendor/FreeImage/Source/LibJPEG/jcmaster.c +856 -0
- data/vendor/FreeImage/Source/LibJPEG/jcomapi.c +106 -0
- data/vendor/FreeImage/Source/LibJPEG/jconfig.h +161 -0
- data/vendor/FreeImage/Source/LibJPEG/jcparam.c +675 -0
- data/vendor/FreeImage/Source/LibJPEG/jcprepct.c +358 -0
- data/vendor/FreeImage/Source/LibJPEG/jcsample.c +545 -0
- data/vendor/FreeImage/Source/LibJPEG/jctrans.c +385 -0
- data/vendor/FreeImage/Source/LibJPEG/jdapimin.c +399 -0
- data/vendor/FreeImage/Source/LibJPEG/jdapistd.c +276 -0
- data/vendor/FreeImage/Source/LibJPEG/jdarith.c +796 -0
- data/vendor/FreeImage/Source/LibJPEG/jdatadst.c +270 -0
- data/vendor/FreeImage/Source/LibJPEG/jdatasrc.c +275 -0
- data/vendor/FreeImage/Source/LibJPEG/jdcoefct.c +741 -0
- data/vendor/FreeImage/Source/LibJPEG/jdcolor.c +748 -0
- data/vendor/FreeImage/Source/LibJPEG/jdct.h +393 -0
- data/vendor/FreeImage/Source/LibJPEG/jddctmgr.c +384 -0
- data/vendor/FreeImage/Source/LibJPEG/jdhuff.c +1554 -0
- data/vendor/FreeImage/Source/LibJPEG/jdinput.c +662 -0
- data/vendor/FreeImage/Source/LibJPEG/jdmainct.c +513 -0
- data/vendor/FreeImage/Source/LibJPEG/jdmarker.c +1511 -0
- data/vendor/FreeImage/Source/LibJPEG/jdmaster.c +543 -0
- data/vendor/FreeImage/Source/LibJPEG/jdmerge.c +401 -0
- data/vendor/FreeImage/Source/LibJPEG/jdpostct.c +290 -0
- data/vendor/FreeImage/Source/LibJPEG/jdsample.c +361 -0
- data/vendor/FreeImage/Source/LibJPEG/jdtrans.c +140 -0
- data/vendor/FreeImage/Source/LibJPEG/jerror.c +253 -0
- data/vendor/FreeImage/Source/LibJPEG/jerror.h +304 -0
- data/vendor/FreeImage/Source/LibJPEG/jfdctflt.c +174 -0
- data/vendor/FreeImage/Source/LibJPEG/jfdctfst.c +230 -0
- data/vendor/FreeImage/Source/LibJPEG/jfdctint.c +4406 -0
- data/vendor/FreeImage/Source/LibJPEG/jidctflt.c +235 -0
- data/vendor/FreeImage/Source/LibJPEG/jidctfst.c +368 -0
- data/vendor/FreeImage/Source/LibJPEG/jidctint.c +5179 -0
- data/vendor/FreeImage/Source/LibJPEG/jinclude.h +91 -0
- data/vendor/FreeImage/Source/LibJPEG/jmemansi.c +167 -0
- data/vendor/FreeImage/Source/LibJPEG/jmemdos.c +638 -0
- data/vendor/FreeImage/Source/LibJPEG/jmemmac.c +289 -0
- data/vendor/FreeImage/Source/LibJPEG/jmemmgr.c +1119 -0
- data/vendor/FreeImage/Source/LibJPEG/jmemname.c +276 -0
- data/vendor/FreeImage/Source/LibJPEG/jmemnobs.c +109 -0
- data/vendor/FreeImage/Source/LibJPEG/jmemsys.h +198 -0
- data/vendor/FreeImage/Source/LibJPEG/jmorecfg.h +442 -0
- data/vendor/FreeImage/Source/LibJPEG/jpegint.h +426 -0
- data/vendor/FreeImage/Source/LibJPEG/jpeglib.h +1180 -0
- data/vendor/FreeImage/Source/LibJPEG/jpegtran.c +577 -0
- data/vendor/FreeImage/Source/LibJPEG/jquant1.c +857 -0
- data/vendor/FreeImage/Source/LibJPEG/jquant2.c +1311 -0
- data/vendor/FreeImage/Source/LibJPEG/jutils.c +227 -0
- data/vendor/FreeImage/Source/LibJPEG/jversion.h +14 -0
- data/vendor/FreeImage/Source/LibJPEG/rdbmp.c +480 -0
- data/vendor/FreeImage/Source/LibJPEG/rdcolmap.c +253 -0
- data/vendor/FreeImage/Source/LibJPEG/rdgif.c +38 -0
- data/vendor/FreeImage/Source/LibJPEG/rdjpgcom.c +515 -0
- data/vendor/FreeImage/Source/LibJPEG/rdppm.c +459 -0
- data/vendor/FreeImage/Source/LibJPEG/rdrle.c +387 -0
- data/vendor/FreeImage/Source/LibJPEG/rdswitch.c +365 -0
- data/vendor/FreeImage/Source/LibJPEG/rdtarga.c +500 -0
- data/vendor/FreeImage/Source/LibJPEG/transupp.c +1763 -0
- data/vendor/FreeImage/Source/LibJPEG/transupp.h +219 -0
- data/vendor/FreeImage/Source/LibJPEG/wrbmp.c +442 -0
- data/vendor/FreeImage/Source/LibJPEG/wrgif.c +399 -0
- data/vendor/FreeImage/Source/LibJPEG/wrjpgcom.c +583 -0
- data/vendor/FreeImage/Source/LibJPEG/wrppm.c +269 -0
- data/vendor/FreeImage/Source/LibJPEG/wrrle.c +305 -0
- data/vendor/FreeImage/Source/LibJPEG/wrtarga.c +253 -0
- data/vendor/FreeImage/Source/LibJXR/common/include/guiddef.h +230 -0
- data/vendor/FreeImage/Source/LibJXR/common/include/wmsal.h +757 -0
- data/vendor/FreeImage/Source/LibJXR/common/include/wmspecstring.h +342 -0
- data/vendor/FreeImage/Source/LibJXR/common/include/wmspecstrings_adt.h +71 -0
- data/vendor/FreeImage/Source/LibJXR/common/include/wmspecstrings_strict.h +1096 -0
- data/vendor/FreeImage/Source/LibJXR/common/include/wmspecstrings_undef.h +406 -0
- data/vendor/FreeImage/Source/LibJXR/image/decode/JXRTranscode.c +987 -0
- data/vendor/FreeImage/Source/LibJXR/image/decode/decode.c +200 -0
- data/vendor/FreeImage/Source/LibJXR/image/decode/decode.h +143 -0
- data/vendor/FreeImage/Source/LibJXR/image/decode/postprocess.c +288 -0
- data/vendor/FreeImage/Source/LibJXR/image/decode/segdec.c +1205 -0
- data/vendor/FreeImage/Source/LibJXR/image/decode/strInvTransform.c +1888 -0
- data/vendor/FreeImage/Source/LibJXR/image/decode/strPredQuantDec.c +539 -0
- data/vendor/FreeImage/Source/LibJXR/image/decode/strdec.c +3628 -0
- data/vendor/FreeImage/Source/LibJXR/image/decode/strdec_x86.c +1640 -0
- data/vendor/FreeImage/Source/LibJXR/image/encode/encode.c +144 -0
- data/vendor/FreeImage/Source/LibJXR/image/encode/encode.h +113 -0
- data/vendor/FreeImage/Source/LibJXR/image/encode/segenc.c +1186 -0
- data/vendor/FreeImage/Source/LibJXR/image/encode/strFwdTransform.c +1111 -0
- data/vendor/FreeImage/Source/LibJXR/image/encode/strPredQuantEnc.c +511 -0
- data/vendor/FreeImage/Source/LibJXR/image/encode/strenc.c +2370 -0
- data/vendor/FreeImage/Source/LibJXR/image/encode/strenc_x86.c +409 -0
- data/vendor/FreeImage/Source/LibJXR/image/sys/adapthuff.c +511 -0
- data/vendor/FreeImage/Source/LibJXR/image/sys/ansi.h +61 -0
- data/vendor/FreeImage/Source/LibJXR/image/sys/common.h +131 -0
- data/vendor/FreeImage/Source/LibJXR/image/sys/image.c +183 -0
- data/vendor/FreeImage/Source/LibJXR/image/sys/perfTimer.h +115 -0
- data/vendor/FreeImage/Source/LibJXR/image/sys/perfTimerANSI.c +274 -0
- data/vendor/FreeImage/Source/LibJXR/image/sys/strPredQuant.c +306 -0
- data/vendor/FreeImage/Source/LibJXR/image/sys/strTransform.c +85 -0
- data/vendor/FreeImage/Source/LibJXR/image/sys/strTransform.h +50 -0
- data/vendor/FreeImage/Source/LibJXR/image/sys/strcodec.c +1251 -0
- data/vendor/FreeImage/Source/LibJXR/image/sys/strcodec.h +681 -0
- data/vendor/FreeImage/Source/LibJXR/image/sys/windowsmediaphoto.h +515 -0
- data/vendor/FreeImage/Source/LibJXR/image/sys/xplatform_image.h +84 -0
- data/vendor/FreeImage/Source/LibJXR/image/x86/x86.h +58 -0
- data/vendor/FreeImage/Source/LibJXR/jxrgluelib/JXRGlue.c +930 -0
- data/vendor/FreeImage/Source/LibJXR/jxrgluelib/JXRGlue.h +636 -0
- data/vendor/FreeImage/Source/LibJXR/jxrgluelib/JXRGlueJxr.c +2246 -0
- data/vendor/FreeImage/Source/LibJXR/jxrgluelib/JXRGluePFC.c +2338 -0
- data/vendor/FreeImage/Source/LibJXR/jxrgluelib/JXRMeta.c +905 -0
- data/vendor/FreeImage/Source/LibJXR/jxrgluelib/JXRMeta.h +258 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/bio.c +188 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/bio.h +128 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/cidx_manager.c +239 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/cidx_manager.h +68 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/cio.c +644 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/cio.h +393 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/dwt.c +919 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/dwt.h +116 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/event.c +141 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/event.h +97 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/function_list.c +114 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/function_list.h +126 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/image.c +235 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/image.h +63 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/indexbox_manager.h +148 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/invert.c +289 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/invert.h +59 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/j2k.c +10238 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/j2k.h +838 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/jp2.c +2776 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/jp2.h +490 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/mct.c +319 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/mct.h +149 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/mqc.c +604 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/mqc.h +201 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/openjpeg.c +955 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/openjpeg.h +1475 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/opj_clock.c +59 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/opj_clock.h +54 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/opj_codec.h +160 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/opj_config.h +9 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/opj_config_private.h +16 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/opj_includes.h +175 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/opj_intmath.h +172 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/opj_inttypes.h +43 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/opj_malloc.h +180 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/opj_stdint.h +47 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/phix_manager.c +191 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/pi.c +1870 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/pi.h +182 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/ppix_manager.c +194 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/raw.c +89 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/raw.h +100 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/t1.c +1751 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/t1.h +157 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/t1_generate_luts.c +276 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/t1_luts.h +143 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/t2.c +1334 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/t2.h +127 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/tcd.c +2123 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/tcd.h +348 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/tgt.c +331 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/tgt.h +140 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/thix_manager.c +134 -0
- data/vendor/FreeImage/Source/LibOpenJPEG/tpix_manager.c +185 -0
- data/vendor/FreeImage/Source/LibPNG/example.c +1061 -0
- data/vendor/FreeImage/Source/LibPNG/png.c +4493 -0
- data/vendor/FreeImage/Source/LibPNG/png.h +3282 -0
- data/vendor/FreeImage/Source/LibPNG/pngconf.h +644 -0
- data/vendor/FreeImage/Source/LibPNG/pngdebug.h +154 -0
- data/vendor/FreeImage/Source/LibPNG/pngerror.c +963 -0
- data/vendor/FreeImage/Source/LibPNG/pngget.c +1213 -0
- data/vendor/FreeImage/Source/LibPNG/pnginfo.h +260 -0
- data/vendor/FreeImage/Source/LibPNG/pnglibconf.h +218 -0
- data/vendor/FreeImage/Source/LibPNG/pngmem.c +281 -0
- data/vendor/FreeImage/Source/LibPNG/pngpread.c +1168 -0
- data/vendor/FreeImage/Source/LibPNG/pngpriv.h +1944 -0
- data/vendor/FreeImage/Source/LibPNG/pngread.c +4121 -0
- data/vendor/FreeImage/Source/LibPNG/pngrio.c +120 -0
- data/vendor/FreeImage/Source/LibPNG/pngrtran.c +4994 -0
- data/vendor/FreeImage/Source/LibPNG/pngrutil.c +4474 -0
- data/vendor/FreeImage/Source/LibPNG/pngset.c +1611 -0
- data/vendor/FreeImage/Source/LibPNG/pngstruct.h +489 -0
- data/vendor/FreeImage/Source/LibPNG/pngtest.c +2011 -0
- data/vendor/FreeImage/Source/LibPNG/pngtrans.c +849 -0
- data/vendor/FreeImage/Source/LibPNG/pngwio.c +168 -0
- data/vendor/FreeImage/Source/LibPNG/pngwrite.c +2455 -0
- data/vendor/FreeImage/Source/LibPNG/pngwtran.c +574 -0
- data/vendor/FreeImage/Source/LibPNG/pngwutil.c +3029 -0
- data/vendor/FreeImage/Source/LibRawLite/dcraw/dcraw.c +15462 -0
- data/vendor/FreeImage/Source/LibRawLite/internal/aahd_demosaic.cpp +706 -0
- data/vendor/FreeImage/Source/LibRawLite/internal/dcb_demosaicing.c +710 -0
- data/vendor/FreeImage/Source/LibRawLite/internal/dcraw_common.cpp +13593 -0
- data/vendor/FreeImage/Source/LibRawLite/internal/dcraw_fileio.cpp +240 -0
- data/vendor/FreeImage/Source/LibRawLite/internal/defines.h +167 -0
- data/vendor/FreeImage/Source/LibRawLite/internal/demosaic_packs.cpp +99 -0
- data/vendor/FreeImage/Source/LibRawLite/internal/dht_demosaic.cpp +873 -0
- data/vendor/FreeImage/Source/LibRawLite/internal/libraw_internal_funcs.h +282 -0
- data/vendor/FreeImage/Source/LibRawLite/internal/libraw_x3f.cpp +1919 -0
- data/vendor/FreeImage/Source/LibRawLite/internal/var_defines.h +216 -0
- data/vendor/FreeImage/Source/LibRawLite/internal/wf_filtering.cpp +1950 -0
- data/vendor/FreeImage/Source/LibRawLite/libraw/libraw.h +338 -0
- data/vendor/FreeImage/Source/LibRawLite/libraw/libraw_alloc.h +99 -0
- data/vendor/FreeImage/Source/LibRawLite/libraw/libraw_const.h +233 -0
- data/vendor/FreeImage/Source/LibRawLite/libraw/libraw_datastream.h +238 -0
- data/vendor/FreeImage/Source/LibRawLite/libraw/libraw_internal.h +225 -0
- data/vendor/FreeImage/Source/LibRawLite/libraw/libraw_types.h +442 -0
- data/vendor/FreeImage/Source/LibRawLite/libraw/libraw_version.h +62 -0
- data/vendor/FreeImage/Source/LibRawLite/src/libraw_c_api.cpp +230 -0
- data/vendor/FreeImage/Source/LibRawLite/src/libraw_cxx.cpp +4533 -0
- data/vendor/FreeImage/Source/LibRawLite/src/libraw_datastream.cpp +703 -0
- data/vendor/FreeImage/Source/LibTIFF4/mkg3states.c +451 -0
- data/vendor/FreeImage/Source/LibTIFF4/mkspans.c +82 -0
- data/vendor/FreeImage/Source/LibTIFF4/t4.h +292 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_aux.c +358 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_close.c +140 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_codec.c +166 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_color.c +287 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_compress.c +304 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_config.h +97 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_config.vc.h +74 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_config.wince.h +71 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_dir.c +1700 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_dir.h +308 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_dirinfo.c +959 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_dirread.c +5640 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_dirwrite.c +2910 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_dumpmode.c +143 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_error.c +80 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_extension.c +118 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_fax3.c +1595 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_fax3.h +538 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_fax3sm.c +1260 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_flush.c +118 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_getimage.c +2890 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_jbig.c +213 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_jpeg.c +2354 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_jpeg_12.c +65 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_luv.c +1683 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_lzma.c +495 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_lzw.c +1169 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_next.c +181 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_ojpeg.c +2501 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_open.c +725 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_packbits.c +300 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_pixarlog.c +1442 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_predict.c +764 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_predict.h +77 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_print.c +716 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_read.c +1086 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_strip.c +383 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_swab.c +310 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_thunder.c +207 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_tile.c +299 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_unix.c +325 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_version.c +40 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_vms.c +603 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_warning.c +81 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_win32.c +443 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_wince.c +293 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_write.c +771 -0
- data/vendor/FreeImage/Source/LibTIFF4/tif_zip.c +472 -0
- data/vendor/FreeImage/Source/LibTIFF4/tiff.h +681 -0
- data/vendor/FreeImage/Source/LibTIFF4/tiffconf.h +170 -0
- data/vendor/FreeImage/Source/LibTIFF4/tiffconf.vc.h +160 -0
- data/vendor/FreeImage/Source/LibTIFF4/tiffconf.wince.h +121 -0
- data/vendor/FreeImage/Source/LibTIFF4/tiffio.h +557 -0
- data/vendor/FreeImage/Source/LibTIFF4/tiffiop.h +367 -0
- data/vendor/FreeImage/Source/LibTIFF4/tiffvers.h +9 -0
- data/vendor/FreeImage/Source/LibTIFF4/uvcode.h +180 -0
- data/vendor/FreeImage/Source/LibWebP/src/dec/alphai.h +55 -0
- data/vendor/FreeImage/Source/LibWebP/src/dec/dec.alpha.c +167 -0
- data/vendor/FreeImage/Source/LibWebP/src/dec/dec.buffer.c +249 -0
- data/vendor/FreeImage/Source/LibWebP/src/dec/dec.frame.c +827 -0
- data/vendor/FreeImage/Source/LibWebP/src/dec/dec.idec.c +857 -0
- data/vendor/FreeImage/Source/LibWebP/src/dec/dec.io.c +640 -0
- data/vendor/FreeImage/Source/LibWebP/src/dec/dec.quant.c +110 -0
- data/vendor/FreeImage/Source/LibWebP/src/dec/dec.tree.c +525 -0
- data/vendor/FreeImage/Source/LibWebP/src/dec/dec.vp8.c +663 -0
- data/vendor/FreeImage/Source/LibWebP/src/dec/dec.vp8l.c +1584 -0
- data/vendor/FreeImage/Source/LibWebP/src/dec/dec.webp.c +834 -0
- data/vendor/FreeImage/Source/LibWebP/src/dec/decode_vp8.h +185 -0
- data/vendor/FreeImage/Source/LibWebP/src/dec/vp8i.h +353 -0
- data/vendor/FreeImage/Source/LibWebP/src/dec/vp8li.h +136 -0
- data/vendor/FreeImage/Source/LibWebP/src/dec/webpi.h +120 -0
- data/vendor/FreeImage/Source/LibWebP/src/demux/demux.demux.c +957 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.alpha_processing.c +377 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.alpha_processing_mips_dsp_r2.c +139 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.alpha_processing_sse2.c +296 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.argb.c +68 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.argb_mips_dsp_r2.c +108 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.argb_sse2.c +62 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.cost.c +412 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.cost_mips32.c +154 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.cost_mips_dsp_r2.c +107 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.cost_sse2.c +121 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.cpu.c +138 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.dec.c +760 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.dec_clip_tables.c +366 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.dec_mips32.c +585 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.dec_mips_dsp_r2.c +992 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.dec_neon.c +1489 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.dec_sse2.c +1284 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.enc.c +788 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.enc_avx2.c +24 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.enc_mips32.c +670 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.enc_mips_dsp_r2.c +1510 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.enc_neon.c +932 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.enc_sse2.c +940 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.filters.c +240 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.filters_mips_dsp_r2.c +404 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.filters_sse2.c +349 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.h +434 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.lossless.c +1838 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.lossless_mips32.c +416 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.lossless_mips_dsp_r2.c +921 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.lossless_neon.c +357 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.lossless_sse2.c +535 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.rescaler.c +115 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.rescaler_mips32.c +192 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.rescaler_mips_dsp_r2.c +210 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.upsampling.c +252 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.upsampling_mips_dsp_r2.c +280 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.upsampling_neon.c +267 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.upsampling_sse2.c +214 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.yuv.c +166 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.yuv_mips32.c +100 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.yuv_mips_dsp_r2.c +131 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/dsp.yuv_sse2.c +322 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/lossless.h +313 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/mips_macro.h +200 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/neon.h +82 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/yuv.h +321 -0
- data/vendor/FreeImage/Source/LibWebP/src/dsp/yuv_tables_sse2.h +536 -0
- data/vendor/FreeImage/Source/LibWebP/src/enc/backward_references.h +202 -0
- data/vendor/FreeImage/Source/LibWebP/src/enc/cost.h +69 -0
- data/vendor/FreeImage/Source/LibWebP/src/enc/enc.alpha.c +440 -0
- data/vendor/FreeImage/Source/LibWebP/src/enc/enc.analysis.c +501 -0
- data/vendor/FreeImage/Source/LibWebP/src/enc/enc.backward_references.c +1076 -0
- data/vendor/FreeImage/Source/LibWebP/src/enc/enc.config.c +163 -0
- data/vendor/FreeImage/Source/LibWebP/src/enc/enc.cost.c +355 -0
- data/vendor/FreeImage/Source/LibWebP/src/enc/enc.filter.c +296 -0
- data/vendor/FreeImage/Source/LibWebP/src/enc/enc.frame.c +850 -0
- data/vendor/FreeImage/Source/LibWebP/src/enc/enc.histogram.c +897 -0
- data/vendor/FreeImage/Source/LibWebP/src/enc/enc.iterator.c +456 -0
- data/vendor/FreeImage/Source/LibWebP/src/enc/enc.near_lossless.c +160 -0
- data/vendor/FreeImage/Source/LibWebP/src/enc/enc.picture.c +290 -0
- data/vendor/FreeImage/Source/LibWebP/src/enc/enc.picture_csp.c +1100 -0
- data/vendor/FreeImage/Source/LibWebP/src/enc/enc.picture_psnr.c +150 -0
- data/vendor/FreeImage/Source/LibWebP/src/enc/enc.picture_rescale.c +285 -0
- data/vendor/FreeImage/Source/LibWebP/src/enc/enc.picture_tools.c +206 -0
- data/vendor/FreeImage/Source/LibWebP/src/enc/enc.quant.c +1191 -0
- data/vendor/FreeImage/Source/LibWebP/src/enc/enc.syntax.c +383 -0
- data/vendor/FreeImage/Source/LibWebP/src/enc/enc.token.c +285 -0
- data/vendor/FreeImage/Source/LibWebP/src/enc/enc.tree.c +504 -0
- data/vendor/FreeImage/Source/LibWebP/src/enc/enc.vp8l.c +1437 -0
- data/vendor/FreeImage/Source/LibWebP/src/enc/enc.webpenc.c +379 -0
- data/vendor/FreeImage/Source/LibWebP/src/enc/histogram.h +114 -0
- data/vendor/FreeImage/Source/LibWebP/src/enc/vp8enci.h +551 -0
- data/vendor/FreeImage/Source/LibWebP/src/enc/vp8li.h +78 -0
- data/vendor/FreeImage/Source/LibWebP/src/mux/mux.anim_encode.c +1241 -0
- data/vendor/FreeImage/Source/LibWebP/src/mux/mux.muxedit.c +696 -0
- data/vendor/FreeImage/Source/LibWebP/src/mux/mux.muxinternal.c +551 -0
- data/vendor/FreeImage/Source/LibWebP/src/mux/mux.muxread.c +544 -0
- data/vendor/FreeImage/Source/LibWebP/src/mux/muxi.h +232 -0
- data/vendor/FreeImage/Source/LibWebP/src/utils/bit_reader.h +168 -0
- data/vendor/FreeImage/Source/LibWebP/src/utils/bit_reader_inl.h +172 -0
- data/vendor/FreeImage/Source/LibWebP/src/utils/bit_writer.h +120 -0
- data/vendor/FreeImage/Source/LibWebP/src/utils/color_cache.h +74 -0
- data/vendor/FreeImage/Source/LibWebP/src/utils/endian_inl.h +100 -0
- data/vendor/FreeImage/Source/LibWebP/src/utils/filters.h +32 -0
- data/vendor/FreeImage/Source/LibWebP/src/utils/huffman.h +67 -0
- data/vendor/FreeImage/Source/LibWebP/src/utils/huffman_encode.h +60 -0
- data/vendor/FreeImage/Source/LibWebP/src/utils/quant_levels.h +36 -0
- data/vendor/FreeImage/Source/LibWebP/src/utils/quant_levels_dec.h +35 -0
- data/vendor/FreeImage/Source/LibWebP/src/utils/random.h +63 -0
- data/vendor/FreeImage/Source/LibWebP/src/utils/rescaler.h +78 -0
- data/vendor/FreeImage/Source/LibWebP/src/utils/thread.h +93 -0
- data/vendor/FreeImage/Source/LibWebP/src/utils/utils.bit_reader.c +208 -0
- data/vendor/FreeImage/Source/LibWebP/src/utils/utils.bit_writer.c +308 -0
- data/vendor/FreeImage/Source/LibWebP/src/utils/utils.color_cache.c +49 -0
- data/vendor/FreeImage/Source/LibWebP/src/utils/utils.filters.c +76 -0
- data/vendor/FreeImage/Source/LibWebP/src/utils/utils.h +121 -0
- data/vendor/FreeImage/Source/LibWebP/src/utils/utils.huffman.c +205 -0
- data/vendor/FreeImage/Source/LibWebP/src/utils/utils.huffman_encode.c +417 -0
- data/vendor/FreeImage/Source/LibWebP/src/utils/utils.quant_levels.c +140 -0
- data/vendor/FreeImage/Source/LibWebP/src/utils/utils.quant_levels_dec.c +279 -0
- data/vendor/FreeImage/Source/LibWebP/src/utils/utils.random.c +43 -0
- data/vendor/FreeImage/Source/LibWebP/src/utils/utils.rescaler.c +82 -0
- data/vendor/FreeImage/Source/LibWebP/src/utils/utils.thread.c +309 -0
- data/vendor/FreeImage/Source/LibWebP/src/utils/utils.utils.c +211 -0
- data/vendor/FreeImage/Source/LibWebP/src/webp/decode.h +493 -0
- data/vendor/FreeImage/Source/LibWebP/src/webp/demux.h +224 -0
- data/vendor/FreeImage/Source/LibWebP/src/webp/encode.h +515 -0
- data/vendor/FreeImage/Source/LibWebP/src/webp/format_constants.h +88 -0
- data/vendor/FreeImage/Source/LibWebP/src/webp/mux.h +507 -0
- data/vendor/FreeImage/Source/LibWebP/src/webp/mux_types.h +97 -0
- data/vendor/FreeImage/Source/LibWebP/src/webp/types.h +52 -0
- data/vendor/FreeImage/Source/MapIntrospector.h +212 -0
- data/vendor/FreeImage/Source/Metadata/Exif.cpp +1253 -0
- data/vendor/FreeImage/Source/Metadata/FIRational.cpp +176 -0
- data/vendor/FreeImage/Source/Metadata/FIRational.h +108 -0
- data/vendor/FreeImage/Source/Metadata/FreeImageTag.cpp +353 -0
- data/vendor/FreeImage/Source/Metadata/FreeImageTag.h +500 -0
- data/vendor/FreeImage/Source/Metadata/IPTC.cpp +342 -0
- data/vendor/FreeImage/Source/Metadata/TagConversion.cpp +1094 -0
- data/vendor/FreeImage/Source/Metadata/TagLib.cpp +1618 -0
- data/vendor/FreeImage/Source/Metadata/XTIFF.cpp +766 -0
- data/vendor/FreeImage/Source/OpenEXR/Half/eLut.cpp +114 -0
- data/vendor/FreeImage/Source/OpenEXR/Half/eLut.h +71 -0
- data/vendor/FreeImage/Source/OpenEXR/Half/half.cpp +310 -0
- data/vendor/FreeImage/Source/OpenEXR/Half/half.h +757 -0
- data/vendor/FreeImage/Source/OpenEXR/Half/halfExport.h +27 -0
- data/vendor/FreeImage/Source/OpenEXR/Half/halfFunction.h +179 -0
- data/vendor/FreeImage/Source/OpenEXR/Half/halfLimits.h +102 -0
- data/vendor/FreeImage/Source/OpenEXR/Half/toFloat.cpp +164 -0
- data/vendor/FreeImage/Source/OpenEXR/Half/toFloat.h +16391 -0
- data/vendor/FreeImage/Source/OpenEXR/Iex/Iex.h +60 -0
- data/vendor/FreeImage/Source/OpenEXR/Iex/IexBaseExc.cpp +156 -0
- data/vendor/FreeImage/Source/OpenEXR/Iex/IexBaseExc.h +264 -0
- data/vendor/FreeImage/Source/OpenEXR/Iex/IexErrnoExc.h +208 -0
- data/vendor/FreeImage/Source/OpenEXR/Iex/IexExport.h +51 -0
- data/vendor/FreeImage/Source/OpenEXR/Iex/IexForward.h +229 -0
- data/vendor/FreeImage/Source/OpenEXR/Iex/IexMacros.h +170 -0
- data/vendor/FreeImage/Source/OpenEXR/Iex/IexMathExc.h +57 -0
- data/vendor/FreeImage/Source/OpenEXR/Iex/IexNamespace.h +112 -0
- data/vendor/FreeImage/Source/OpenEXR/Iex/IexThrowErrnoExc.cpp +873 -0
- data/vendor/FreeImage/Source/OpenEXR/Iex/IexThrowErrnoExc.h +97 -0
- data/vendor/FreeImage/Source/OpenEXR/IexMath/IexMathFloatExc.cpp +113 -0
- data/vendor/FreeImage/Source/OpenEXR/IexMath/IexMathFloatExc.h +146 -0
- data/vendor/FreeImage/Source/OpenEXR/IexMath/IexMathFpu.cpp +530 -0
- data/vendor/FreeImage/Source/OpenEXR/IexMath/IexMathFpu.h +91 -0
- data/vendor/FreeImage/Source/OpenEXR/IexMath/IexMathIeeeExc.h +62 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmBaseConfig.h +61 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfAcesFile.cpp +633 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfAcesFile.h +324 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfArray.h +285 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfAttribute.cpp +158 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfAttribute.h +407 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfAutoArray.h +95 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfB44Compressor.cpp +1072 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfB44Compressor.h +118 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfBoxAttribute.cpp +111 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfBoxAttribute.h +87 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfCRgbaFile.cpp +1438 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfCRgbaFile.h +555 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfChannelList.cpp +322 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfChannelList.h +436 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfChannelListAttribute.cpp +150 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfChannelListAttribute.h +74 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfCheckedArithmetic.h +163 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfChromaticities.cpp +151 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfChromaticities.h +131 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfChromaticitiesAttribute.cpp +87 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfChromaticitiesAttribute.h +73 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfCompositeDeepScanLine.cpp +591 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfCompositeDeepScanLine.h +142 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfCompression.h +84 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfCompressionAttribute.cpp +78 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfCompressionAttribute.h +64 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfCompressor.cpp +226 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfCompressor.h +265 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfConvert.cpp +143 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfConvert.h +107 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfDeepCompositing.cpp +110 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfDeepCompositing.h +132 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfDeepFrameBuffer.cpp +230 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfDeepFrameBuffer.h +339 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfDeepImageState.h +96 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfDeepImageStateAttribute.cpp +78 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfDeepImageStateAttribute.h +68 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfDeepScanLineInputFile.cpp +2025 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfDeepScanLineInputFile.h +276 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfDeepScanLineInputPart.cpp +149 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfDeepScanLineInputPart.h +181 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfDeepScanLineOutputFile.cpp +1552 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfDeepScanLineOutputFile.h +244 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfDeepScanLineOutputPart.cpp +107 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfDeepScanLineOutputPart.h +168 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfDeepTiledInputFile.cpp +1979 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfDeepTiledInputFile.h +437 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfDeepTiledInputPart.cpp +273 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfDeepTiledInputPart.h +362 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfDeepTiledOutputFile.cpp +2055 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfDeepTiledOutputFile.h +475 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfDeepTiledOutputPart.cpp +250 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfDeepTiledOutputPart.h +394 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfDoubleAttribute.cpp +57 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfDoubleAttribute.h +59 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfDwaCompressor.cpp +3424 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfDwaCompressor.h +210 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfDwaCompressorSimd.h +2145 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfEnvmap.cpp +335 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfEnvmap.h +336 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfEnvmapAttribute.cpp +76 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfEnvmapAttribute.h +68 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfExport.h +46 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfFastHuf.cpp +768 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfFastHuf.h +148 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfFloatAttribute.cpp +57 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfFloatAttribute.h +58 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfFloatVectorAttribute.cpp +84 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfFloatVectorAttribute.h +76 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfForward.h +127 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfFrameBuffer.cpp +228 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfFrameBuffer.h +386 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfFramesPerSecond.cpp +76 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfFramesPerSecond.h +94 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfGenericInputFile.cpp +76 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfGenericInputFile.h +58 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfGenericOutputFile.cpp +112 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfGenericOutputFile.h +62 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfHeader.cpp +1283 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfHeader.h +699 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfHuf.cpp +1114 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfHuf.h +82 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfIO.cpp +110 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfIO.h +255 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfInputFile.cpp +895 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfInputFile.h +240 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfInputPart.cpp +114 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfInputPart.h +84 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfInputPartData.cpp +51 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfInputPartData.h +69 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfInputStreamMutex.h +68 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfInt64.h +56 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfIntAttribute.cpp +57 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfIntAttribute.h +58 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfKeyCode.cpp +217 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfKeyCode.h +167 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfKeyCodeAttribute.cpp +99 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfKeyCodeAttribute.h +73 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfLineOrder.h +69 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfLineOrderAttribute.cpp +78 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfLineOrderAttribute.h +72 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfLut.cpp +178 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfLut.h +188 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfMatrixAttribute.cpp +263 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfMatrixAttribute.h +83 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfMisc.cpp +1872 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfMisc.h +466 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfMultiPartInputFile.cpp +783 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfMultiPartInputFile.h +128 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfMultiPartOutputFile.cpp +519 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfMultiPartOutputFile.h +118 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfMultiView.cpp +435 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfMultiView.h +187 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfName.h +150 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfNamespace.h +115 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfOpaqueAttribute.cpp +126 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfOpaqueAttribute.h +110 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfOptimizedPixelReading.h +646 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfOutputFile.cpp +1378 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfOutputFile.h +263 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfOutputPart.cpp +105 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfOutputPart.h +77 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfOutputPartData.cpp +52 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfOutputPartData.h +62 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfOutputStreamMutex.h +70 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfPartHelper.h +262 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfPartType.cpp +63 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfPartType.h +62 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfPixelType.h +67 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfPizCompressor.cpp +667 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfPizCompressor.h +117 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfPreviewImage.cpp +104 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfPreviewImage.h +135 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfPreviewImageAttribute.cpp +103 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfPreviewImageAttribute.h +70 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfPxr24Compressor.cpp +553 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfPxr24Compressor.h +109 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfRational.cpp +127 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfRational.h +98 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfRationalAttribute.cpp +74 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfRationalAttribute.h +69 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfRgba.h +109 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfRgbaFile.cpp +1405 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfRgbaFile.h +346 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfRgbaYca.cpp +497 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfRgbaYca.h +259 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfRle.cpp +157 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfRle.h +63 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfRleCompressor.cpp +220 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfRleCompressor.h +80 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfScanLineInputFile.cpp +1702 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfScanLineInputFile.h +210 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfSimd.h +59 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfStandardAttributes.cpp +125 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfStandardAttributes.h +382 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfStdIO.cpp +242 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfStdIO.h +160 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfStringAttribute.cpp +80 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfStringAttribute.h +71 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfStringVectorAttribute.cpp +100 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfStringVectorAttribute.h +74 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfSystemSpecific.cpp +129 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfSystemSpecific.h +172 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfTestFile.cpp +216 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfTestFile.h +97 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfThreading.cpp +62 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfThreading.h +95 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfTileDescription.h +107 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfTileDescriptionAttribute.cpp +86 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfTileDescriptionAttribute.h +72 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfTileOffsets.cpp +552 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfTileOffsets.h +125 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfTiledInputFile.cpp +1533 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfTiledInputFile.h +401 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfTiledInputPart.cpp +208 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfTiledInputPart.h +100 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfTiledMisc.cpp +389 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfTiledMisc.h +106 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfTiledOutputFile.cpp +1841 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfTiledOutputFile.h +495 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfTiledOutputPart.cpp +228 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfTiledOutputPart.h +105 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfTiledRgbaFile.cpp +1163 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfTiledRgbaFile.h +482 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfTimeCode.cpp +431 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfTimeCode.h +242 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfTimeCodeAttribute.cpp +79 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfTimeCodeAttribute.h +74 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfVecAttribute.cpp +217 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfVecAttribute.h +100 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfVersion.cpp +60 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfVersion.h +136 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfWav.cpp +391 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfWav.h +78 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfXdr.h +927 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfZip.cpp +196 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfZip.h +78 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfZipCompressor.cpp +127 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/ImfZipCompressor.h +89 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/b44ExpLogTable.cpp +136 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/b44ExpLogTable.h +16396 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/dwaLookups.cpp +573 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmImf/dwaLookups.h +98334 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmThread/IlmThread.cpp +80 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmThread/IlmThread.h +143 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmThread/IlmThreadExport.h +46 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmThread/IlmThreadForward.h +52 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmThread/IlmThreadMutex.cpp +59 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmThread/IlmThreadMutex.h +160 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmThread/IlmThreadMutexPosix.cpp +85 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmThread/IlmThreadMutexWin32.cpp +79 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmThread/IlmThreadNamespace.h +114 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmThread/IlmThreadPool.cpp +483 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmThread/IlmThreadPool.h +160 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmThread/IlmThreadPosix.cpp +98 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmThread/IlmThreadSemaphore.cpp +60 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmThread/IlmThreadSemaphore.h +112 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmThread/IlmThreadSemaphorePosix.cpp +106 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmThread/IlmThreadSemaphorePosixCompat.cpp +155 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmThread/IlmThreadSemaphoreWin32.cpp +153 -0
- data/vendor/FreeImage/Source/OpenEXR/IlmThread/IlmThreadWin32.cpp +100 -0
- data/vendor/FreeImage/Source/OpenEXR/Imath/ImathBox.cpp +37 -0
- data/vendor/FreeImage/Source/OpenEXR/Imath/ImathBox.h +849 -0
- data/vendor/FreeImage/Source/OpenEXR/Imath/ImathBoxAlgo.h +1016 -0
- data/vendor/FreeImage/Source/OpenEXR/Imath/ImathColor.h +736 -0
- data/vendor/FreeImage/Source/OpenEXR/Imath/ImathColorAlgo.cpp +178 -0
- data/vendor/FreeImage/Source/OpenEXR/Imath/ImathColorAlgo.h +257 -0
- data/vendor/FreeImage/Source/OpenEXR/Imath/ImathEuler.h +926 -0
- data/vendor/FreeImage/Source/OpenEXR/Imath/ImathExc.h +73 -0
- data/vendor/FreeImage/Source/OpenEXR/Imath/ImathExport.h +46 -0
- data/vendor/FreeImage/Source/OpenEXR/Imath/ImathForward.h +72 -0
- data/vendor/FreeImage/Source/OpenEXR/Imath/ImathFrame.h +192 -0
- data/vendor/FreeImage/Source/OpenEXR/Imath/ImathFrustum.h +741 -0
- data/vendor/FreeImage/Source/OpenEXR/Imath/ImathFrustumTest.h +417 -0
- data/vendor/FreeImage/Source/OpenEXR/Imath/ImathFun.cpp +181 -0
- data/vendor/FreeImage/Source/OpenEXR/Imath/ImathFun.h +269 -0
- data/vendor/FreeImage/Source/OpenEXR/Imath/ImathGL.h +166 -0
- data/vendor/FreeImage/Source/OpenEXR/Imath/ImathGLU.h +54 -0
- data/vendor/FreeImage/Source/OpenEXR/Imath/ImathHalfLimits.h +68 -0
- data/vendor/FreeImage/Source/OpenEXR/Imath/ImathInt64.h +62 -0
- data/vendor/FreeImage/Source/OpenEXR/Imath/ImathInterval.h +226 -0
- data/vendor/FreeImage/Source/OpenEXR/Imath/ImathLimits.h +268 -0
- data/vendor/FreeImage/Source/OpenEXR/Imath/ImathLine.h +185 -0
- data/vendor/FreeImage/Source/OpenEXR/Imath/ImathLineAlgo.h +288 -0
- data/vendor/FreeImage/Source/OpenEXR/Imath/ImathMath.h +208 -0
- data/vendor/FreeImage/Source/OpenEXR/Imath/ImathMatrix.h +3441 -0
- data/vendor/FreeImage/Source/OpenEXR/Imath/ImathMatrixAlgo.cpp +1252 -0
- data/vendor/FreeImage/Source/OpenEXR/Imath/ImathMatrixAlgo.h +1425 -0
- data/vendor/FreeImage/Source/OpenEXR/Imath/ImathNamespace.h +115 -0
- data/vendor/FreeImage/Source/OpenEXR/Imath/ImathPlane.h +257 -0
- data/vendor/FreeImage/Source/OpenEXR/Imath/ImathPlatform.h +112 -0
- data/vendor/FreeImage/Source/OpenEXR/Imath/ImathQuat.h +964 -0
- data/vendor/FreeImage/Source/OpenEXR/Imath/ImathRandom.cpp +194 -0
- data/vendor/FreeImage/Source/OpenEXR/Imath/ImathRandom.h +401 -0
- data/vendor/FreeImage/Source/OpenEXR/Imath/ImathRoots.h +219 -0
- data/vendor/FreeImage/Source/OpenEXR/Imath/ImathShear.cpp +54 -0
- data/vendor/FreeImage/Source/OpenEXR/Imath/ImathShear.h +656 -0
- data/vendor/FreeImage/Source/OpenEXR/Imath/ImathSphere.h +177 -0
- data/vendor/FreeImage/Source/OpenEXR/Imath/ImathVec.cpp +583 -0
- data/vendor/FreeImage/Source/OpenEXR/Imath/ImathVec.h +2227 -0
- data/vendor/FreeImage/Source/OpenEXR/Imath/ImathVecAlgo.h +147 -0
- data/vendor/FreeImage/Source/OpenEXR/OpenEXRConfig.h +72 -0
- data/vendor/FreeImage/Source/Plugin.h +144 -0
- data/vendor/FreeImage/Source/Quantizers.h +354 -0
- data/vendor/FreeImage/Source/ToneMapping.h +44 -0
- data/vendor/FreeImage/Source/Utilities.h +516 -0
- data/vendor/FreeImage/Source/ZLib/adler32.c +179 -0
- data/vendor/FreeImage/Source/ZLib/compress.c +80 -0
- data/vendor/FreeImage/Source/ZLib/crc32.c +425 -0
- data/vendor/FreeImage/Source/ZLib/crc32.h +441 -0
- data/vendor/FreeImage/Source/ZLib/deflate.c +1967 -0
- data/vendor/FreeImage/Source/ZLib/deflate.h +346 -0
- data/vendor/FreeImage/Source/ZLib/gzclose.c +25 -0
- data/vendor/FreeImage/Source/ZLib/gzguts.h +209 -0
- data/vendor/FreeImage/Source/ZLib/gzlib.c +634 -0
- data/vendor/FreeImage/Source/ZLib/gzread.c +594 -0
- data/vendor/FreeImage/Source/ZLib/gzwrite.c +577 -0
- data/vendor/FreeImage/Source/ZLib/infback.c +640 -0
- data/vendor/FreeImage/Source/ZLib/inffast.c +340 -0
- data/vendor/FreeImage/Source/ZLib/inffast.h +11 -0
- data/vendor/FreeImage/Source/ZLib/inffixed.h +94 -0
- data/vendor/FreeImage/Source/ZLib/inflate.c +1512 -0
- data/vendor/FreeImage/Source/ZLib/inflate.h +122 -0
- data/vendor/FreeImage/Source/ZLib/inftrees.c +306 -0
- data/vendor/FreeImage/Source/ZLib/inftrees.h +62 -0
- data/vendor/FreeImage/Source/ZLib/trees.c +1226 -0
- data/vendor/FreeImage/Source/ZLib/trees.h +128 -0
- data/vendor/FreeImage/Source/ZLib/uncompr.c +59 -0
- data/vendor/FreeImage/Source/ZLib/zconf.h +511 -0
- data/vendor/FreeImage/Source/ZLib/zlib.h +1768 -0
- data/vendor/FreeImage/Source/ZLib/zutil.c +324 -0
- data/vendor/FreeImage/Source/ZLib/zutil.h +253 -0
- metadata +931 -0
|
@@ -0,0 +1,507 @@
|
|
|
1
|
+
// Copyright 2011 Google Inc. All Rights Reserved.
|
|
2
|
+
//
|
|
3
|
+
// Use of this source code is governed by a BSD-style license
|
|
4
|
+
// that can be found in the COPYING file in the root of the source
|
|
5
|
+
// tree. An additional intellectual property rights grant can be found
|
|
6
|
+
// in the file PATENTS. All contributing project authors may
|
|
7
|
+
// be found in the AUTHORS file in the root of the source tree.
|
|
8
|
+
// -----------------------------------------------------------------------------
|
|
9
|
+
//
|
|
10
|
+
// RIFF container manipulation and encoding for WebP images.
|
|
11
|
+
//
|
|
12
|
+
// Authors: Urvang (urvang@google.com)
|
|
13
|
+
// Vikas (vikasa@google.com)
|
|
14
|
+
|
|
15
|
+
#ifndef WEBP_WEBP_MUX_H_
|
|
16
|
+
#define WEBP_WEBP_MUX_H_
|
|
17
|
+
|
|
18
|
+
#include "./encode.h"
|
|
19
|
+
#include "./mux_types.h"
|
|
20
|
+
|
|
21
|
+
#ifdef __cplusplus
|
|
22
|
+
extern "C" {
|
|
23
|
+
#endif
|
|
24
|
+
|
|
25
|
+
#define WEBP_MUX_ABI_VERSION 0x0103 // MAJOR(8b) + MINOR(8b)
|
|
26
|
+
|
|
27
|
+
//------------------------------------------------------------------------------
|
|
28
|
+
// Mux API
|
|
29
|
+
//
|
|
30
|
+
// This API allows manipulation of WebP container images containing features
|
|
31
|
+
// like color profile, metadata, animation and fragmented images.
|
|
32
|
+
//
|
|
33
|
+
// Code Example#1: Create a WebPMux object with image data, color profile and
|
|
34
|
+
// XMP metadata.
|
|
35
|
+
/*
|
|
36
|
+
int copy_data = 0;
|
|
37
|
+
WebPMux* mux = WebPMuxNew();
|
|
38
|
+
// ... (Prepare image data).
|
|
39
|
+
WebPMuxSetImage(mux, &image, copy_data);
|
|
40
|
+
// ... (Prepare ICCP color profile data).
|
|
41
|
+
WebPMuxSetChunk(mux, "ICCP", &icc_profile, copy_data);
|
|
42
|
+
// ... (Prepare XMP metadata).
|
|
43
|
+
WebPMuxSetChunk(mux, "XMP ", &xmp, copy_data);
|
|
44
|
+
// Get data from mux in WebP RIFF format.
|
|
45
|
+
WebPMuxAssemble(mux, &output_data);
|
|
46
|
+
WebPMuxDelete(mux);
|
|
47
|
+
// ... (Consume output_data; e.g. write output_data.bytes to file).
|
|
48
|
+
WebPDataClear(&output_data);
|
|
49
|
+
*/
|
|
50
|
+
|
|
51
|
+
// Code Example#2: Get image and color profile data from a WebP file.
|
|
52
|
+
/*
|
|
53
|
+
int copy_data = 0;
|
|
54
|
+
// ... (Read data from file).
|
|
55
|
+
WebPMux* mux = WebPMuxCreate(&data, copy_data);
|
|
56
|
+
WebPMuxGetFrame(mux, 1, &image);
|
|
57
|
+
// ... (Consume image; e.g. call WebPDecode() to decode the data).
|
|
58
|
+
WebPMuxGetChunk(mux, "ICCP", &icc_profile);
|
|
59
|
+
// ... (Consume icc_data).
|
|
60
|
+
WebPMuxDelete(mux);
|
|
61
|
+
free(data);
|
|
62
|
+
*/
|
|
63
|
+
|
|
64
|
+
// Note: forward declaring enumerations is not allowed in (strict) C and C++,
|
|
65
|
+
// the types are left here for reference.
|
|
66
|
+
// typedef enum WebPMuxError WebPMuxError;
|
|
67
|
+
// typedef enum WebPChunkId WebPChunkId;
|
|
68
|
+
typedef struct WebPMux WebPMux; // main opaque object.
|
|
69
|
+
typedef struct WebPMuxFrameInfo WebPMuxFrameInfo;
|
|
70
|
+
typedef struct WebPMuxAnimParams WebPMuxAnimParams;
|
|
71
|
+
|
|
72
|
+
// Error codes
|
|
73
|
+
typedef enum WebPMuxError {
|
|
74
|
+
WEBP_MUX_OK = 1,
|
|
75
|
+
WEBP_MUX_NOT_FOUND = 0,
|
|
76
|
+
WEBP_MUX_INVALID_ARGUMENT = -1,
|
|
77
|
+
WEBP_MUX_BAD_DATA = -2,
|
|
78
|
+
WEBP_MUX_MEMORY_ERROR = -3,
|
|
79
|
+
WEBP_MUX_NOT_ENOUGH_DATA = -4
|
|
80
|
+
} WebPMuxError;
|
|
81
|
+
|
|
82
|
+
// IDs for different types of chunks.
|
|
83
|
+
typedef enum WebPChunkId {
|
|
84
|
+
WEBP_CHUNK_VP8X, // VP8X
|
|
85
|
+
WEBP_CHUNK_ICCP, // ICCP
|
|
86
|
+
WEBP_CHUNK_ANIM, // ANIM
|
|
87
|
+
WEBP_CHUNK_ANMF, // ANMF
|
|
88
|
+
WEBP_CHUNK_FRGM, // FRGM
|
|
89
|
+
WEBP_CHUNK_ALPHA, // ALPH
|
|
90
|
+
WEBP_CHUNK_IMAGE, // VP8/VP8L
|
|
91
|
+
WEBP_CHUNK_EXIF, // EXIF
|
|
92
|
+
WEBP_CHUNK_XMP, // XMP
|
|
93
|
+
WEBP_CHUNK_UNKNOWN, // Other chunks.
|
|
94
|
+
WEBP_CHUNK_NIL
|
|
95
|
+
} WebPChunkId;
|
|
96
|
+
|
|
97
|
+
//------------------------------------------------------------------------------
|
|
98
|
+
|
|
99
|
+
// Returns the version number of the mux library, packed in hexadecimal using
|
|
100
|
+
// 8bits for each of major/minor/revision. E.g: v2.5.7 is 0x020507.
|
|
101
|
+
WEBP_EXTERN(int) WebPGetMuxVersion(void);
|
|
102
|
+
|
|
103
|
+
//------------------------------------------------------------------------------
|
|
104
|
+
// Life of a Mux object
|
|
105
|
+
|
|
106
|
+
// Internal, version-checked, entry point
|
|
107
|
+
WEBP_EXTERN(WebPMux*) WebPNewInternal(int);
|
|
108
|
+
|
|
109
|
+
// Creates an empty mux object.
|
|
110
|
+
// Returns:
|
|
111
|
+
// A pointer to the newly created empty mux object.
|
|
112
|
+
// Or NULL in case of memory error.
|
|
113
|
+
static WEBP_INLINE WebPMux* WebPMuxNew(void) {
|
|
114
|
+
return WebPNewInternal(WEBP_MUX_ABI_VERSION);
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
// Deletes the mux object.
|
|
118
|
+
// Parameters:
|
|
119
|
+
// mux - (in/out) object to be deleted
|
|
120
|
+
WEBP_EXTERN(void) WebPMuxDelete(WebPMux* mux);
|
|
121
|
+
|
|
122
|
+
//------------------------------------------------------------------------------
|
|
123
|
+
// Mux creation.
|
|
124
|
+
|
|
125
|
+
// Internal, version-checked, entry point
|
|
126
|
+
WEBP_EXTERN(WebPMux*) WebPMuxCreateInternal(const WebPData*, int, int);
|
|
127
|
+
|
|
128
|
+
// Creates a mux object from raw data given in WebP RIFF format.
|
|
129
|
+
// Parameters:
|
|
130
|
+
// bitstream - (in) the bitstream data in WebP RIFF format
|
|
131
|
+
// copy_data - (in) value 1 indicates given data WILL be copied to the mux
|
|
132
|
+
// object and value 0 indicates data will NOT be copied.
|
|
133
|
+
// Returns:
|
|
134
|
+
// A pointer to the mux object created from given data - on success.
|
|
135
|
+
// NULL - In case of invalid data or memory error.
|
|
136
|
+
static WEBP_INLINE WebPMux* WebPMuxCreate(const WebPData* bitstream,
|
|
137
|
+
int copy_data) {
|
|
138
|
+
return WebPMuxCreateInternal(bitstream, copy_data, WEBP_MUX_ABI_VERSION);
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
//------------------------------------------------------------------------------
|
|
142
|
+
// Non-image chunks.
|
|
143
|
+
|
|
144
|
+
// Note: Only non-image related chunks should be managed through chunk APIs.
|
|
145
|
+
// (Image related chunks are: "ANMF", "FRGM", "VP8 ", "VP8L" and "ALPH").
|
|
146
|
+
// To add, get and delete images, use WebPMuxSetImage(), WebPMuxPushFrame(),
|
|
147
|
+
// WebPMuxGetFrame() and WebPMuxDeleteFrame().
|
|
148
|
+
|
|
149
|
+
// Adds a chunk with id 'fourcc' and data 'chunk_data' in the mux object.
|
|
150
|
+
// Any existing chunk(s) with the same id will be removed.
|
|
151
|
+
// Parameters:
|
|
152
|
+
// mux - (in/out) object to which the chunk is to be added
|
|
153
|
+
// fourcc - (in) a character array containing the fourcc of the given chunk;
|
|
154
|
+
// e.g., "ICCP", "XMP ", "EXIF" etc.
|
|
155
|
+
// chunk_data - (in) the chunk data to be added
|
|
156
|
+
// copy_data - (in) value 1 indicates given data WILL be copied to the mux
|
|
157
|
+
// object and value 0 indicates data will NOT be copied.
|
|
158
|
+
// Returns:
|
|
159
|
+
// WEBP_MUX_INVALID_ARGUMENT - if mux, fourcc or chunk_data is NULL
|
|
160
|
+
// or if fourcc corresponds to an image chunk.
|
|
161
|
+
// WEBP_MUX_MEMORY_ERROR - on memory allocation error.
|
|
162
|
+
// WEBP_MUX_OK - on success.
|
|
163
|
+
WEBP_EXTERN(WebPMuxError) WebPMuxSetChunk(
|
|
164
|
+
WebPMux* mux, const char fourcc[4], const WebPData* chunk_data,
|
|
165
|
+
int copy_data);
|
|
166
|
+
|
|
167
|
+
// Gets a reference to the data of the chunk with id 'fourcc' in the mux object.
|
|
168
|
+
// The caller should NOT free the returned data.
|
|
169
|
+
// Parameters:
|
|
170
|
+
// mux - (in) object from which the chunk data is to be fetched
|
|
171
|
+
// fourcc - (in) a character array containing the fourcc of the chunk;
|
|
172
|
+
// e.g., "ICCP", "XMP ", "EXIF" etc.
|
|
173
|
+
// chunk_data - (out) returned chunk data
|
|
174
|
+
// Returns:
|
|
175
|
+
// WEBP_MUX_INVALID_ARGUMENT - if mux, fourcc or chunk_data is NULL
|
|
176
|
+
// or if fourcc corresponds to an image chunk.
|
|
177
|
+
// WEBP_MUX_NOT_FOUND - If mux does not contain a chunk with the given id.
|
|
178
|
+
// WEBP_MUX_OK - on success.
|
|
179
|
+
WEBP_EXTERN(WebPMuxError) WebPMuxGetChunk(
|
|
180
|
+
const WebPMux* mux, const char fourcc[4], WebPData* chunk_data);
|
|
181
|
+
|
|
182
|
+
// Deletes the chunk with the given 'fourcc' from the mux object.
|
|
183
|
+
// Parameters:
|
|
184
|
+
// mux - (in/out) object from which the chunk is to be deleted
|
|
185
|
+
// fourcc - (in) a character array containing the fourcc of the chunk;
|
|
186
|
+
// e.g., "ICCP", "XMP ", "EXIF" etc.
|
|
187
|
+
// Returns:
|
|
188
|
+
// WEBP_MUX_INVALID_ARGUMENT - if mux or fourcc is NULL
|
|
189
|
+
// or if fourcc corresponds to an image chunk.
|
|
190
|
+
// WEBP_MUX_NOT_FOUND - If mux does not contain a chunk with the given fourcc.
|
|
191
|
+
// WEBP_MUX_OK - on success.
|
|
192
|
+
WEBP_EXTERN(WebPMuxError) WebPMuxDeleteChunk(
|
|
193
|
+
WebPMux* mux, const char fourcc[4]);
|
|
194
|
+
|
|
195
|
+
//------------------------------------------------------------------------------
|
|
196
|
+
// Images.
|
|
197
|
+
|
|
198
|
+
// Encapsulates data about a single frame/fragment.
|
|
199
|
+
struct WebPMuxFrameInfo {
|
|
200
|
+
WebPData bitstream; // image data: can be a raw VP8/VP8L bitstream
|
|
201
|
+
// or a single-image WebP file.
|
|
202
|
+
int x_offset; // x-offset of the frame.
|
|
203
|
+
int y_offset; // y-offset of the frame.
|
|
204
|
+
int duration; // duration of the frame (in milliseconds).
|
|
205
|
+
|
|
206
|
+
WebPChunkId id; // frame type: should be one of WEBP_CHUNK_ANMF,
|
|
207
|
+
// WEBP_CHUNK_FRGM or WEBP_CHUNK_IMAGE
|
|
208
|
+
WebPMuxAnimDispose dispose_method; // Disposal method for the frame.
|
|
209
|
+
WebPMuxAnimBlend blend_method; // Blend operation for the frame.
|
|
210
|
+
uint32_t pad[1]; // padding for later use
|
|
211
|
+
};
|
|
212
|
+
|
|
213
|
+
// Sets the (non-animated and non-fragmented) image in the mux object.
|
|
214
|
+
// Note: Any existing images (including frames/fragments) will be removed.
|
|
215
|
+
// Parameters:
|
|
216
|
+
// mux - (in/out) object in which the image is to be set
|
|
217
|
+
// bitstream - (in) can be a raw VP8/VP8L bitstream or a single-image
|
|
218
|
+
// WebP file (non-animated and non-fragmented)
|
|
219
|
+
// copy_data - (in) value 1 indicates given data WILL be copied to the mux
|
|
220
|
+
// object and value 0 indicates data will NOT be copied.
|
|
221
|
+
// Returns:
|
|
222
|
+
// WEBP_MUX_INVALID_ARGUMENT - if mux is NULL or bitstream is NULL.
|
|
223
|
+
// WEBP_MUX_MEMORY_ERROR - on memory allocation error.
|
|
224
|
+
// WEBP_MUX_OK - on success.
|
|
225
|
+
WEBP_EXTERN(WebPMuxError) WebPMuxSetImage(
|
|
226
|
+
WebPMux* mux, const WebPData* bitstream, int copy_data);
|
|
227
|
+
|
|
228
|
+
// Adds a frame at the end of the mux object.
|
|
229
|
+
// Notes: (1) frame.id should be one of WEBP_CHUNK_ANMF or WEBP_CHUNK_FRGM
|
|
230
|
+
// (2) For setting a non-animated non-fragmented image, use
|
|
231
|
+
// WebPMuxSetImage() instead.
|
|
232
|
+
// (3) Type of frame being pushed must be same as the frames in mux.
|
|
233
|
+
// (4) As WebP only supports even offsets, any odd offset will be snapped
|
|
234
|
+
// to an even location using: offset &= ~1
|
|
235
|
+
// Parameters:
|
|
236
|
+
// mux - (in/out) object to which the frame is to be added
|
|
237
|
+
// frame - (in) frame data.
|
|
238
|
+
// copy_data - (in) value 1 indicates given data WILL be copied to the mux
|
|
239
|
+
// object and value 0 indicates data will NOT be copied.
|
|
240
|
+
// Returns:
|
|
241
|
+
// WEBP_MUX_INVALID_ARGUMENT - if mux or frame is NULL
|
|
242
|
+
// or if content of 'frame' is invalid.
|
|
243
|
+
// WEBP_MUX_MEMORY_ERROR - on memory allocation error.
|
|
244
|
+
// WEBP_MUX_OK - on success.
|
|
245
|
+
WEBP_EXTERN(WebPMuxError) WebPMuxPushFrame(
|
|
246
|
+
WebPMux* mux, const WebPMuxFrameInfo* frame, int copy_data);
|
|
247
|
+
|
|
248
|
+
// Gets the nth frame from the mux object.
|
|
249
|
+
// The content of 'frame->bitstream' is allocated using malloc(), and NOT
|
|
250
|
+
// owned by the 'mux' object. It MUST be deallocated by the caller by calling
|
|
251
|
+
// WebPDataClear().
|
|
252
|
+
// nth=0 has a special meaning - last position.
|
|
253
|
+
// Parameters:
|
|
254
|
+
// mux - (in) object from which the info is to be fetched
|
|
255
|
+
// nth - (in) index of the frame in the mux object
|
|
256
|
+
// frame - (out) data of the returned frame
|
|
257
|
+
// Returns:
|
|
258
|
+
// WEBP_MUX_INVALID_ARGUMENT - if mux or frame is NULL.
|
|
259
|
+
// WEBP_MUX_NOT_FOUND - if there are less than nth frames in the mux object.
|
|
260
|
+
// WEBP_MUX_BAD_DATA - if nth frame chunk in mux is invalid.
|
|
261
|
+
// WEBP_MUX_MEMORY_ERROR - on memory allocation error.
|
|
262
|
+
// WEBP_MUX_OK - on success.
|
|
263
|
+
WEBP_EXTERN(WebPMuxError) WebPMuxGetFrame(
|
|
264
|
+
const WebPMux* mux, uint32_t nth, WebPMuxFrameInfo* frame);
|
|
265
|
+
|
|
266
|
+
// Deletes a frame from the mux object.
|
|
267
|
+
// nth=0 has a special meaning - last position.
|
|
268
|
+
// Parameters:
|
|
269
|
+
// mux - (in/out) object from which a frame is to be deleted
|
|
270
|
+
// nth - (in) The position from which the frame is to be deleted
|
|
271
|
+
// Returns:
|
|
272
|
+
// WEBP_MUX_INVALID_ARGUMENT - if mux is NULL.
|
|
273
|
+
// WEBP_MUX_NOT_FOUND - If there are less than nth frames in the mux object
|
|
274
|
+
// before deletion.
|
|
275
|
+
// WEBP_MUX_OK - on success.
|
|
276
|
+
WEBP_EXTERN(WebPMuxError) WebPMuxDeleteFrame(WebPMux* mux, uint32_t nth);
|
|
277
|
+
|
|
278
|
+
//------------------------------------------------------------------------------
|
|
279
|
+
// Animation.
|
|
280
|
+
|
|
281
|
+
// Animation parameters.
|
|
282
|
+
struct WebPMuxAnimParams {
|
|
283
|
+
uint32_t bgcolor; // Background color of the canvas stored (in MSB order) as:
|
|
284
|
+
// Bits 00 to 07: Alpha.
|
|
285
|
+
// Bits 08 to 15: Red.
|
|
286
|
+
// Bits 16 to 23: Green.
|
|
287
|
+
// Bits 24 to 31: Blue.
|
|
288
|
+
int loop_count; // Number of times to repeat the animation [0 = infinite].
|
|
289
|
+
};
|
|
290
|
+
|
|
291
|
+
// Sets the animation parameters in the mux object. Any existing ANIM chunks
|
|
292
|
+
// will be removed.
|
|
293
|
+
// Parameters:
|
|
294
|
+
// mux - (in/out) object in which ANIM chunk is to be set/added
|
|
295
|
+
// params - (in) animation parameters.
|
|
296
|
+
// Returns:
|
|
297
|
+
// WEBP_MUX_INVALID_ARGUMENT - if mux or params is NULL.
|
|
298
|
+
// WEBP_MUX_MEMORY_ERROR - on memory allocation error.
|
|
299
|
+
// WEBP_MUX_OK - on success.
|
|
300
|
+
WEBP_EXTERN(WebPMuxError) WebPMuxSetAnimationParams(
|
|
301
|
+
WebPMux* mux, const WebPMuxAnimParams* params);
|
|
302
|
+
|
|
303
|
+
// Gets the animation parameters from the mux object.
|
|
304
|
+
// Parameters:
|
|
305
|
+
// mux - (in) object from which the animation parameters to be fetched
|
|
306
|
+
// params - (out) animation parameters extracted from the ANIM chunk
|
|
307
|
+
// Returns:
|
|
308
|
+
// WEBP_MUX_INVALID_ARGUMENT - if mux or params is NULL.
|
|
309
|
+
// WEBP_MUX_NOT_FOUND - if ANIM chunk is not present in mux object.
|
|
310
|
+
// WEBP_MUX_OK - on success.
|
|
311
|
+
WEBP_EXTERN(WebPMuxError) WebPMuxGetAnimationParams(
|
|
312
|
+
const WebPMux* mux, WebPMuxAnimParams* params);
|
|
313
|
+
|
|
314
|
+
//------------------------------------------------------------------------------
|
|
315
|
+
// Misc Utilities.
|
|
316
|
+
|
|
317
|
+
// Sets the canvas size for the mux object. The width and height can be
|
|
318
|
+
// specified explicitly or left as zero (0, 0).
|
|
319
|
+
// * When width and height are specified explicitly, then this frame bound is
|
|
320
|
+
// enforced during subsequent calls to WebPMuxAssemble() and an error is
|
|
321
|
+
// reported if any animated frame does not completely fit within the canvas.
|
|
322
|
+
// * When unspecified (0, 0), the constructed canvas will get the frame bounds
|
|
323
|
+
// from the bounding-box over all frames after calling WebPMuxAssemble().
|
|
324
|
+
// Parameters:
|
|
325
|
+
// mux - (in) object to which the canvas size is to be set
|
|
326
|
+
// width - (in) canvas width
|
|
327
|
+
// height - (in) canvas height
|
|
328
|
+
// Returns:
|
|
329
|
+
// WEBP_MUX_INVALID_ARGUMENT - if mux is NULL; or
|
|
330
|
+
// width or height are invalid or out of bounds
|
|
331
|
+
// WEBP_MUX_OK - on success.
|
|
332
|
+
WEBP_EXTERN(WebPMuxError) WebPMuxSetCanvasSize(WebPMux* mux,
|
|
333
|
+
int width, int height);
|
|
334
|
+
|
|
335
|
+
// Gets the canvas size from the mux object.
|
|
336
|
+
// Note: This method assumes that the VP8X chunk, if present, is up-to-date.
|
|
337
|
+
// That is, the mux object hasn't been modified since the last call to
|
|
338
|
+
// WebPMuxAssemble() or WebPMuxCreate().
|
|
339
|
+
// Parameters:
|
|
340
|
+
// mux - (in) object from which the canvas size is to be fetched
|
|
341
|
+
// width - (out) canvas width
|
|
342
|
+
// height - (out) canvas height
|
|
343
|
+
// Returns:
|
|
344
|
+
// WEBP_MUX_INVALID_ARGUMENT - if mux, width or height is NULL.
|
|
345
|
+
// WEBP_MUX_BAD_DATA - if VP8X/VP8/VP8L chunk or canvas size is invalid.
|
|
346
|
+
// WEBP_MUX_OK - on success.
|
|
347
|
+
WEBP_EXTERN(WebPMuxError) WebPMuxGetCanvasSize(const WebPMux* mux,
|
|
348
|
+
int* width, int* height);
|
|
349
|
+
|
|
350
|
+
// Gets the feature flags from the mux object.
|
|
351
|
+
// Note: This method assumes that the VP8X chunk, if present, is up-to-date.
|
|
352
|
+
// That is, the mux object hasn't been modified since the last call to
|
|
353
|
+
// WebPMuxAssemble() or WebPMuxCreate().
|
|
354
|
+
// Parameters:
|
|
355
|
+
// mux - (in) object from which the features are to be fetched
|
|
356
|
+
// flags - (out) the flags specifying which features are present in the
|
|
357
|
+
// mux object. This will be an OR of various flag values.
|
|
358
|
+
// Enum 'WebPFeatureFlags' can be used to test individual flag values.
|
|
359
|
+
// Returns:
|
|
360
|
+
// WEBP_MUX_INVALID_ARGUMENT - if mux or flags is NULL.
|
|
361
|
+
// WEBP_MUX_BAD_DATA - if VP8X/VP8/VP8L chunk or canvas size is invalid.
|
|
362
|
+
// WEBP_MUX_OK - on success.
|
|
363
|
+
WEBP_EXTERN(WebPMuxError) WebPMuxGetFeatures(const WebPMux* mux,
|
|
364
|
+
uint32_t* flags);
|
|
365
|
+
|
|
366
|
+
// Gets number of chunks with the given 'id' in the mux object.
|
|
367
|
+
// Parameters:
|
|
368
|
+
// mux - (in) object from which the info is to be fetched
|
|
369
|
+
// id - (in) chunk id specifying the type of chunk
|
|
370
|
+
// num_elements - (out) number of chunks with the given chunk id
|
|
371
|
+
// Returns:
|
|
372
|
+
// WEBP_MUX_INVALID_ARGUMENT - if mux, or num_elements is NULL.
|
|
373
|
+
// WEBP_MUX_OK - on success.
|
|
374
|
+
WEBP_EXTERN(WebPMuxError) WebPMuxNumChunks(const WebPMux* mux,
|
|
375
|
+
WebPChunkId id, int* num_elements);
|
|
376
|
+
|
|
377
|
+
// Assembles all chunks in WebP RIFF format and returns in 'assembled_data'.
|
|
378
|
+
// This function also validates the mux object.
|
|
379
|
+
// Note: The content of 'assembled_data' will be ignored and overwritten.
|
|
380
|
+
// Also, the content of 'assembled_data' is allocated using malloc(), and NOT
|
|
381
|
+
// owned by the 'mux' object. It MUST be deallocated by the caller by calling
|
|
382
|
+
// WebPDataClear(). It's always safe to call WebPDataClear() upon return,
|
|
383
|
+
// even in case of error.
|
|
384
|
+
// Parameters:
|
|
385
|
+
// mux - (in/out) object whose chunks are to be assembled
|
|
386
|
+
// assembled_data - (out) assembled WebP data
|
|
387
|
+
// Returns:
|
|
388
|
+
// WEBP_MUX_BAD_DATA - if mux object is invalid.
|
|
389
|
+
// WEBP_MUX_INVALID_ARGUMENT - if mux or assembled_data is NULL.
|
|
390
|
+
// WEBP_MUX_MEMORY_ERROR - on memory allocation error.
|
|
391
|
+
// WEBP_MUX_OK - on success.
|
|
392
|
+
WEBP_EXTERN(WebPMuxError) WebPMuxAssemble(WebPMux* mux,
|
|
393
|
+
WebPData* assembled_data);
|
|
394
|
+
|
|
395
|
+
//------------------------------------------------------------------------------
|
|
396
|
+
// WebPAnimEncoder API
|
|
397
|
+
//
|
|
398
|
+
// This API allows encoding (possibly) animated WebP images.
|
|
399
|
+
//
|
|
400
|
+
// Code Example:
|
|
401
|
+
/*
|
|
402
|
+
WebPAnimEncoderOptions enc_options;
|
|
403
|
+
WebPAnimEncoderOptionsInit(&enc_options);
|
|
404
|
+
// Tune 'enc_options' as needed.
|
|
405
|
+
WebPAnimEncoder* enc = WebPAnimEncoderNew(width, height, &enc_options);
|
|
406
|
+
while(<there are more frames>) {
|
|
407
|
+
WebPConfig config;
|
|
408
|
+
WebPConfigInit(&config);
|
|
409
|
+
// Tune 'config' as needed.
|
|
410
|
+
WebPAnimEncoderAdd(enc, frame, duration, &config);
|
|
411
|
+
}
|
|
412
|
+
WebPAnimEncoderAssemble(enc, webp_data);
|
|
413
|
+
WebPAnimEncoderDelete(enc);
|
|
414
|
+
// Write the 'webp_data' to a file, or re-mux it further.
|
|
415
|
+
*/
|
|
416
|
+
|
|
417
|
+
typedef struct WebPAnimEncoder WebPAnimEncoder; // Main opaque object.
|
|
418
|
+
|
|
419
|
+
// Global options.
|
|
420
|
+
typedef struct {
|
|
421
|
+
WebPMuxAnimParams anim_params; // Animation parameters.
|
|
422
|
+
int minimize_size; // If true, minimize the output size (slow). Implicitly
|
|
423
|
+
// disables key-frame insertion.
|
|
424
|
+
int kmin;
|
|
425
|
+
int kmax; // Minimum and maximum distance between consecutive key
|
|
426
|
+
// frames in the output. The library may insert some key
|
|
427
|
+
// frames as needed to satisfy this criteria.
|
|
428
|
+
// Note that these conditions should hold: kmax > kmin
|
|
429
|
+
// and kmin >= kmax / 2 + 1. Also, if kmin == 0, then
|
|
430
|
+
// key-frame insertion is disabled; and if kmax == 0,
|
|
431
|
+
// then all frames will be key-frames.
|
|
432
|
+
int allow_mixed; // If true, use mixed compression mode; may choose
|
|
433
|
+
// either lossy and lossless for each frame.
|
|
434
|
+
|
|
435
|
+
// TODO(urvang): Instead of printing errors to STDERR, we should have an error
|
|
436
|
+
// string attached to the encoder.
|
|
437
|
+
int verbose; // If true, print encoding info.
|
|
438
|
+
uint32_t padding[4]; // Padding for later use.
|
|
439
|
+
} WebPAnimEncoderOptions;
|
|
440
|
+
|
|
441
|
+
// Internal, version-checked, entry point.
|
|
442
|
+
WEBP_EXTERN(int) WebPAnimEncoderOptionsInitInternal(
|
|
443
|
+
WebPAnimEncoderOptions*, int);
|
|
444
|
+
|
|
445
|
+
// Should always be called, to initialize a fresh WebPAnimEncoderOptions
|
|
446
|
+
// structure before modification. Returns false in case of version mismatch.
|
|
447
|
+
// WebPAnimEncoderOptionsInit() must have succeeded before using the 'options'
|
|
448
|
+
// object.
|
|
449
|
+
static WEBP_INLINE int WebPAnimEncoderOptionsInit(
|
|
450
|
+
WebPAnimEncoderOptions* enc_options) {
|
|
451
|
+
return WebPAnimEncoderOptionsInitInternal(enc_options, WEBP_MUX_ABI_VERSION);
|
|
452
|
+
}
|
|
453
|
+
|
|
454
|
+
// Internal, version-checked, entry point.
|
|
455
|
+
WEBP_EXTERN(WebPAnimEncoder*) WebPAnimEncoderNewInternal(
|
|
456
|
+
int, int, const WebPAnimEncoderOptions*, int);
|
|
457
|
+
|
|
458
|
+
// Creates and initializes a WebPAnimEncoder object.
|
|
459
|
+
// Parameters:
|
|
460
|
+
// width/height - (in) canvas width and height of the animation.
|
|
461
|
+
// encoder_options - (in) encoding options; can be passed NULL to pick
|
|
462
|
+
// reasonable defaults.
|
|
463
|
+
// Returns:
|
|
464
|
+
// A pointer to the newly created WebPAnimEncoder object.
|
|
465
|
+
// Or NULL in case of memory error.
|
|
466
|
+
static WEBP_INLINE WebPAnimEncoder* WebPAnimEncoderNew(
|
|
467
|
+
int width, int height, const WebPAnimEncoderOptions* enc_options) {
|
|
468
|
+
return WebPAnimEncoderNewInternal(width, height, enc_options,
|
|
469
|
+
WEBP_MUX_ABI_VERSION);
|
|
470
|
+
}
|
|
471
|
+
|
|
472
|
+
// Optimize the given frame for WebP, encode it and add it to the
|
|
473
|
+
// WebPAnimEncoder object.
|
|
474
|
+
// Parameters:
|
|
475
|
+
// enc - (in/out) object to which the frame is to be added.
|
|
476
|
+
// frame - (in/out) frame data in ARGB or YUVA format.
|
|
477
|
+
// duration - (in) frame duration
|
|
478
|
+
// config - (in) encoding options; can be passed NULL to pick
|
|
479
|
+
// reasonable defaults.
|
|
480
|
+
// Returns:
|
|
481
|
+
// On error, returns false and frame->error_code is set appropriately.
|
|
482
|
+
// Otherwise, returns true.
|
|
483
|
+
WEBP_EXTERN(int) WebPAnimEncoderAdd(
|
|
484
|
+
WebPAnimEncoder* enc, WebPPicture* frame, int duration,
|
|
485
|
+
const WebPConfig* config);
|
|
486
|
+
|
|
487
|
+
// Assemble all frames added so far into a WebP bitstream.
|
|
488
|
+
// Parameters:
|
|
489
|
+
// enc - (in/out) object from which the frames are to be assembled.
|
|
490
|
+
// webp_data - (out) generated WebP bitstream.
|
|
491
|
+
// Returns:
|
|
492
|
+
// True on success.
|
|
493
|
+
WEBP_EXTERN(int) WebPAnimEncoderAssemble(WebPAnimEncoder* enc,
|
|
494
|
+
WebPData* webp_data);
|
|
495
|
+
|
|
496
|
+
// Deletes the WebPAnimEncoder object.
|
|
497
|
+
// Parameters:
|
|
498
|
+
// anim_enc - (in/out) object to be deleted
|
|
499
|
+
WEBP_EXTERN(void) WebPAnimEncoderDelete(WebPAnimEncoder* anim_enc);
|
|
500
|
+
|
|
501
|
+
//------------------------------------------------------------------------------
|
|
502
|
+
|
|
503
|
+
#ifdef __cplusplus
|
|
504
|
+
} // extern "C"
|
|
505
|
+
#endif
|
|
506
|
+
|
|
507
|
+
#endif /* WEBP_WEBP_MUX_H_ */
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
// Copyright 2012 Google Inc. All Rights Reserved.
|
|
2
|
+
//
|
|
3
|
+
// Use of this source code is governed by a BSD-style license
|
|
4
|
+
// that can be found in the COPYING file in the root of the source
|
|
5
|
+
// tree. An additional intellectual property rights grant can be found
|
|
6
|
+
// in the file PATENTS. All contributing project authors may
|
|
7
|
+
// be found in the AUTHORS file in the root of the source tree.
|
|
8
|
+
// -----------------------------------------------------------------------------
|
|
9
|
+
//
|
|
10
|
+
// Data-types common to the mux and demux libraries.
|
|
11
|
+
//
|
|
12
|
+
// Author: Urvang (urvang@google.com)
|
|
13
|
+
|
|
14
|
+
#ifndef WEBP_WEBP_MUX_TYPES_H_
|
|
15
|
+
#define WEBP_WEBP_MUX_TYPES_H_
|
|
16
|
+
|
|
17
|
+
#include <stdlib.h> // free()
|
|
18
|
+
#include <string.h> // memset()
|
|
19
|
+
#include "./types.h"
|
|
20
|
+
|
|
21
|
+
#ifdef __cplusplus
|
|
22
|
+
extern "C" {
|
|
23
|
+
#endif
|
|
24
|
+
|
|
25
|
+
// Note: forward declaring enumerations is not allowed in (strict) C and C++,
|
|
26
|
+
// the types are left here for reference.
|
|
27
|
+
// typedef enum WebPFeatureFlags WebPFeatureFlags;
|
|
28
|
+
// typedef enum WebPMuxAnimDispose WebPMuxAnimDispose;
|
|
29
|
+
// typedef enum WebPMuxAnimBlend WebPMuxAnimBlend;
|
|
30
|
+
typedef struct WebPData WebPData;
|
|
31
|
+
|
|
32
|
+
// VP8X Feature Flags.
|
|
33
|
+
typedef enum WebPFeatureFlags {
|
|
34
|
+
FRAGMENTS_FLAG = 0x00000001,
|
|
35
|
+
ANIMATION_FLAG = 0x00000002,
|
|
36
|
+
XMP_FLAG = 0x00000004,
|
|
37
|
+
EXIF_FLAG = 0x00000008,
|
|
38
|
+
ALPHA_FLAG = 0x00000010,
|
|
39
|
+
ICCP_FLAG = 0x00000020
|
|
40
|
+
} WebPFeatureFlags;
|
|
41
|
+
|
|
42
|
+
// Dispose method (animation only). Indicates how the area used by the current
|
|
43
|
+
// frame is to be treated before rendering the next frame on the canvas.
|
|
44
|
+
typedef enum WebPMuxAnimDispose {
|
|
45
|
+
WEBP_MUX_DISPOSE_NONE, // Do not dispose.
|
|
46
|
+
WEBP_MUX_DISPOSE_BACKGROUND // Dispose to background color.
|
|
47
|
+
} WebPMuxAnimDispose;
|
|
48
|
+
|
|
49
|
+
// Blend operation (animation only). Indicates how transparent pixels of the
|
|
50
|
+
// current frame are blended with those of the previous canvas.
|
|
51
|
+
typedef enum WebPMuxAnimBlend {
|
|
52
|
+
WEBP_MUX_BLEND, // Blend.
|
|
53
|
+
WEBP_MUX_NO_BLEND // Do not blend.
|
|
54
|
+
} WebPMuxAnimBlend;
|
|
55
|
+
|
|
56
|
+
// Data type used to describe 'raw' data, e.g., chunk data
|
|
57
|
+
// (ICC profile, metadata) and WebP compressed image data.
|
|
58
|
+
struct WebPData {
|
|
59
|
+
const uint8_t* bytes;
|
|
60
|
+
size_t size;
|
|
61
|
+
};
|
|
62
|
+
|
|
63
|
+
// Initializes the contents of the 'webp_data' object with default values.
|
|
64
|
+
static WEBP_INLINE void WebPDataInit(WebPData* webp_data) {
|
|
65
|
+
if (webp_data != NULL) {
|
|
66
|
+
memset(webp_data, 0, sizeof(*webp_data));
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
// Clears the contents of the 'webp_data' object by calling free(). Does not
|
|
71
|
+
// deallocate the object itself.
|
|
72
|
+
static WEBP_INLINE void WebPDataClear(WebPData* webp_data) {
|
|
73
|
+
if (webp_data != NULL) {
|
|
74
|
+
free((void*)webp_data->bytes);
|
|
75
|
+
WebPDataInit(webp_data);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
// Allocates necessary storage for 'dst' and copies the contents of 'src'.
|
|
80
|
+
// Returns true on success.
|
|
81
|
+
static WEBP_INLINE int WebPDataCopy(const WebPData* src, WebPData* dst) {
|
|
82
|
+
if (src == NULL || dst == NULL) return 0;
|
|
83
|
+
WebPDataInit(dst);
|
|
84
|
+
if (src->bytes != NULL && src->size != 0) {
|
|
85
|
+
dst->bytes = (uint8_t*)malloc(src->size);
|
|
86
|
+
if (dst->bytes == NULL) return 0;
|
|
87
|
+
memcpy((void*)dst->bytes, src->bytes, src->size);
|
|
88
|
+
dst->size = src->size;
|
|
89
|
+
}
|
|
90
|
+
return 1;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
#ifdef __cplusplus
|
|
94
|
+
} // extern "C"
|
|
95
|
+
#endif
|
|
96
|
+
|
|
97
|
+
#endif /* WEBP_WEBP_MUX_TYPES_H_ */
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
// Copyright 2010 Google Inc. All Rights Reserved.
|
|
2
|
+
//
|
|
3
|
+
// Use of this source code is governed by a BSD-style license
|
|
4
|
+
// that can be found in the COPYING file in the root of the source
|
|
5
|
+
// tree. An additional intellectual property rights grant can be found
|
|
6
|
+
// in the file PATENTS. All contributing project authors may
|
|
7
|
+
// be found in the AUTHORS file in the root of the source tree.
|
|
8
|
+
// -----------------------------------------------------------------------------
|
|
9
|
+
//
|
|
10
|
+
// Common types
|
|
11
|
+
//
|
|
12
|
+
// Author: Skal (pascal.massimino@gmail.com)
|
|
13
|
+
|
|
14
|
+
#ifndef WEBP_WEBP_TYPES_H_
|
|
15
|
+
#define WEBP_WEBP_TYPES_H_
|
|
16
|
+
|
|
17
|
+
#include <stddef.h> // for size_t
|
|
18
|
+
|
|
19
|
+
#ifndef _MSC_VER
|
|
20
|
+
#include <inttypes.h>
|
|
21
|
+
#if defined(__cplusplus) || !defined(__STRICT_ANSI__) || \
|
|
22
|
+
(defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L)
|
|
23
|
+
#define WEBP_INLINE inline
|
|
24
|
+
#else
|
|
25
|
+
#define WEBP_INLINE
|
|
26
|
+
#endif
|
|
27
|
+
#else
|
|
28
|
+
typedef signed char int8_t;
|
|
29
|
+
typedef unsigned char uint8_t;
|
|
30
|
+
typedef signed short int16_t;
|
|
31
|
+
typedef unsigned short uint16_t;
|
|
32
|
+
typedef signed int int32_t;
|
|
33
|
+
typedef unsigned int uint32_t;
|
|
34
|
+
typedef unsigned long long int uint64_t;
|
|
35
|
+
typedef long long int int64_t;
|
|
36
|
+
#define WEBP_INLINE __forceinline
|
|
37
|
+
#endif /* _MSC_VER */
|
|
38
|
+
|
|
39
|
+
#ifndef WEBP_EXTERN
|
|
40
|
+
// This explicitly marks library functions and allows for changing the
|
|
41
|
+
// signature for e.g., Windows DLL builds.
|
|
42
|
+
# if defined(__GNUC__) && __GNUC__ >= 4
|
|
43
|
+
# define WEBP_EXTERN(type) extern __attribute__ ((visibility ("default"))) type
|
|
44
|
+
# else
|
|
45
|
+
# define WEBP_EXTERN(type) extern type
|
|
46
|
+
# endif /* __GNUC__ >= 4 */
|
|
47
|
+
#endif /* WEBP_EXTERN */
|
|
48
|
+
|
|
49
|
+
// Macro to check ABI compatibility (same major revision number)
|
|
50
|
+
#define WEBP_ABI_IS_INCOMPATIBLE(a, b) (((a) >> 8) != ((b) >> 8))
|
|
51
|
+
|
|
52
|
+
#endif /* WEBP_WEBP_TYPES_H_ */
|