exiftool_vendored 10.31.0 → 10.40.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of exiftool_vendored might be problematic. Click here for more details.

Files changed (1296) hide show
  1. checksums.yaml +4 -4
  2. data/bin/Image-ExifTool-10.40/Changes +7693 -0
  3. data/bin/Image-ExifTool-10.40/MANIFEST +998 -0
  4. data/bin/Image-ExifTool-10.40/META.json +51 -0
  5. data/bin/Image-ExifTool-10.40/META.yml +31 -0
  6. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/Makefile.PL +0 -0
  7. data/bin/Image-ExifTool-10.40/README +240 -0
  8. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/arg_files/exif2iptc.args +0 -0
  9. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/arg_files/exif2xmp.args +0 -0
  10. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/arg_files/gps2xmp.args +0 -0
  11. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/arg_files/iptc2exif.args +0 -0
  12. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/arg_files/iptc2xmp.args +0 -0
  13. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/arg_files/iptcCore.args +0 -0
  14. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/arg_files/pdf2xmp.args +0 -0
  15. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/arg_files/xmp2exif.args +0 -0
  16. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/arg_files/xmp2gps.args +0 -0
  17. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/arg_files/xmp2iptc.args +0 -0
  18. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/arg_files/xmp2pdf.args +0 -0
  19. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/config_files/bibble.config +0 -0
  20. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/config_files/convert_regions.config +0 -0
  21. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/config_files/example.config +0 -0
  22. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/config_files/fotoware.config +0 -0
  23. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/config_files/gps2utm.config +0 -0
  24. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/config_files/photoshop_paths.config +0 -0
  25. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/config_files/picasa_faces.config +0 -0
  26. data/bin/Image-ExifTool-10.40/config_files/time_zone.config +76 -0
  27. data/bin/Image-ExifTool-10.40/exiftool +6462 -0
  28. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/fmt_files/gpx.fmt +0 -0
  29. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/fmt_files/gpx_wpt.fmt +0 -0
  30. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/fmt_files/kml.fmt +0 -0
  31. data/bin/Image-ExifTool-10.40/html/ExifTool.html +2122 -0
  32. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/MIE1.1-20070121.pdf +0 -0
  33. data/bin/Image-ExifTool-10.40/html/Shift.html +179 -0
  34. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/AFCP.html +0 -0
  35. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/AIFF.html +0 -0
  36. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/APE.html +0 -0
  37. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/APP12.html +0 -0
  38. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/ASF.html +0 -0
  39. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/Apple.html +0 -0
  40. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/Audible.html +0 -0
  41. data/bin/Image-ExifTool-10.40/html/TagNames/BMP.html +233 -0
  42. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/BPG.html +0 -0
  43. data/bin/Image-ExifTool-10.40/html/TagNames/Canon.html +9741 -0
  44. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/CanonCustom.html +0 -0
  45. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/CanonRaw.html +0 -0
  46. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/CanonVRD.html +0 -0
  47. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/Casio.html +0 -0
  48. data/bin/Image-ExifTool-10.40/html/TagNames/Composite.html +745 -0
  49. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/DICOM.html +0 -0
  50. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/DJI.html +0 -0
  51. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/DNG.html +0 -0
  52. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/DPX.html +0 -0
  53. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/DV.html +0 -0
  54. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/DarwinCore.html +0 -0
  55. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/DjVu.html +0 -0
  56. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/EXE.html +0 -0
  57. data/bin/Image-ExifTool-10.40/html/TagNames/EXIF.html +3484 -0
  58. data/bin/Image-ExifTool-10.40/html/TagNames/Extra.html +471 -0
  59. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/FLAC.html +0 -0
  60. data/bin/Image-ExifTool-10.40/html/TagNames/FLIF.html +84 -0
  61. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/FLIR.html +0 -0
  62. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/Flash.html +0 -0
  63. data/bin/Image-ExifTool-10.40/html/TagNames/FlashPix.html +1475 -0
  64. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/Font.html +0 -0
  65. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/FotoStation.html +0 -0
  66. data/bin/Image-ExifTool-10.40/html/TagNames/FujiFilm.html +867 -0
  67. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/GE.html +0 -0
  68. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/GIF.html +0 -0
  69. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/GIMP.html +0 -0
  70. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/GPS.html +0 -0
  71. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/GeoTiff.html +0 -0
  72. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/H264.html +0 -0
  73. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/HP.html +0 -0
  74. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/HTML.html +0 -0
  75. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/ICC_Profile.html +0 -0
  76. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/ID3.html +0 -0
  77. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/IPTC.html +0 -0
  78. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/ISO.html +0 -0
  79. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/ITC.html +0 -0
  80. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/JFIF.html +0 -0
  81. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/JPEG.html +0 -0
  82. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/JVC.html +0 -0
  83. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/Jpeg2000.html +0 -0
  84. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/Kodak.html +0 -0
  85. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/KyoceraRaw.html +0 -0
  86. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/LNK.html +0 -0
  87. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/Leaf.html +0 -0
  88. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/Lytro.html +0 -0
  89. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/M2TS.html +0 -0
  90. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/MIE.html +0 -0
  91. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/MIFF.html +0 -0
  92. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/MNG.html +0 -0
  93. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/MOI.html +0 -0
  94. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/MPC.html +0 -0
  95. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/MPEG.html +0 -0
  96. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/MPF.html +0 -0
  97. data/bin/Image-ExifTool-10.40/html/TagNames/MWG.html +584 -0
  98. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/MXF.html +0 -0
  99. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/Matroska.html +0 -0
  100. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/Microsoft.html +0 -0
  101. data/bin/Image-ExifTool-10.40/html/TagNames/Minolta.html +2634 -0
  102. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/MinoltaRaw.html +0 -0
  103. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/Motorola.html +0 -0
  104. data/bin/Image-ExifTool-10.40/html/TagNames/Nikon.html +6016 -0
  105. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/NikonCapture.html +0 -0
  106. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/NikonCustom.html +0 -0
  107. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/Nintendo.html +0 -0
  108. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/OOXML.html +0 -0
  109. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/Ogg.html +0 -0
  110. data/bin/Image-ExifTool-10.40/html/TagNames/Olympus.html +3655 -0
  111. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/OpenEXR.html +0 -0
  112. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/Opus.html +0 -0
  113. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/PDF.html +0 -0
  114. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/PGF.html +0 -0
  115. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/PICT.html +0 -0
  116. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/PLIST.html +0 -0
  117. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/PLUS.html +0 -0
  118. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/PNG.html +0 -0
  119. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/PSP.html +0 -0
  120. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/Palm.html +0 -0
  121. data/bin/Image-ExifTool-10.40/html/TagNames/Panasonic.html +1701 -0
  122. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/PanasonicRaw.html +0 -0
  123. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/Pentax.html +0 -0
  124. data/bin/Image-ExifTool-10.40/html/TagNames/PhaseOne.html +263 -0
  125. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/PhotoCD.html +0 -0
  126. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/PhotoMechanic.html +0 -0
  127. data/bin/Image-ExifTool-10.40/html/TagNames/Photoshop.html +739 -0
  128. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/PostScript.html +0 -0
  129. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/PrintIM.html +0 -0
  130. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/Qualcomm.html +0 -0
  131. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/QuickTime.html +0 -0
  132. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/RIFF.html +0 -0
  133. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/RSRC.html +0 -0
  134. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/RTF.html +0 -0
  135. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/Radiance.html +0 -0
  136. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/Rawzor.html +0 -0
  137. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/Real.html +0 -0
  138. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/Reconyx.html +0 -0
  139. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/Ricoh.html +0 -0
  140. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/Samsung.html +0 -0
  141. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/Sanyo.html +0 -0
  142. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/Scalado.html +0 -0
  143. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/Shortcuts.html +0 -0
  144. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/Sigma.html +0 -0
  145. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/SigmaRaw.html +0 -0
  146. data/bin/Image-ExifTool-10.40/html/TagNames/Sony.html +10305 -0
  147. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/SonyIDC.html +0 -0
  148. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/Stim.html +0 -0
  149. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/Theora.html +0 -0
  150. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/Torrent.html +0 -0
  151. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/Unknown.html +0 -0
  152. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/VCard.html +0 -0
  153. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/Vorbis.html +0 -0
  154. data/bin/Image-ExifTool-10.40/html/TagNames/XMP.html +10158 -0
  155. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/ZIP.html +0 -0
  156. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/iWork.html +0 -0
  157. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/index.html +0 -0
  158. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/TagNames/style.css +0 -0
  159. data/bin/Image-ExifTool-10.40/html/ancient_history.html +8365 -0
  160. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/canon_raw.html +0 -0
  161. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/commentary.html +0 -0
  162. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/config.html +0 -0
  163. data/bin/Image-ExifTool-10.40/html/data_members.html +286 -0
  164. data/bin/Image-ExifTool-10.40/html/exiftool_pod.html +1873 -0
  165. data/bin/Image-ExifTool-10.40/html/faq.html +1591 -0
  166. data/bin/Image-ExifTool-10.40/html/filename.html +353 -0
  167. data/bin/Image-ExifTool-10.40/html/geotag.html +661 -0
  168. data/bin/Image-ExifTool-10.40/html/history.html +317 -0
  169. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/htmldump.html +0 -0
  170. data/bin/Image-ExifTool-10.40/html/idiosyncracies.html +272 -0
  171. data/bin/Image-ExifTool-10.40/html/index.html +1363 -0
  172. data/bin/Image-ExifTool-10.40/html/install.html +261 -0
  173. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/metafiles.html +0 -0
  174. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/overview.png +0 -0
  175. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/standards.html +0 -0
  176. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/struct.html +0 -0
  177. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/style.css +0 -0
  178. data/bin/Image-ExifTool-10.40/html/under.html +137 -0
  179. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/verbose.html +0 -0
  180. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/html/writing.html +0 -0
  181. data/bin/Image-ExifTool-10.40/lib/File/RandomAccess.pm +378 -0
  182. data/bin/Image-ExifTool-10.40/lib/File/RandomAccess.pod +231 -0
  183. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool.pm +7773 -0
  184. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool.pod +2569 -0
  185. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/AES.pm +501 -0
  186. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/AFCP.pm +286 -0
  187. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/AIFF.pm +289 -0
  188. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/APE.pm +282 -0
  189. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/APP12.pm +322 -0
  190. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/ASF.pm +885 -0
  191. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Apple.pm +153 -0
  192. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Audible.pm +317 -0
  193. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/BMP.pm +361 -0
  194. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/BPG.pm +251 -0
  195. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/BZZ.pm +472 -0
  196. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/BigTIFF.pm +282 -0
  197. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/BuildTagLookup.pm +2562 -0
  198. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Canon.pm +8929 -0
  199. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/CanonCustom.pm +2667 -0
  200. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/CanonRaw.pm +910 -0
  201. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/CanonVRD.pm +2273 -0
  202. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/CaptureOne.pm +235 -0
  203. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Casio.pm +2060 -0
  204. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Charset.pm +423 -0
  205. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/lib/Image/ExifTool/Charset/Arabic.pm +0 -0
  206. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/lib/Image/ExifTool/Charset/Baltic.pm +0 -0
  207. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/lib/Image/ExifTool/Charset/Cyrillic.pm +0 -0
  208. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/lib/Image/ExifTool/Charset/Greek.pm +0 -0
  209. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/lib/Image/ExifTool/Charset/Hebrew.pm +0 -0
  210. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/lib/Image/ExifTool/Charset/JIS.pm +0 -0
  211. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/lib/Image/ExifTool/Charset/Latin.pm +0 -0
  212. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/lib/Image/ExifTool/Charset/Latin2.pm +0 -0
  213. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/lib/Image/ExifTool/Charset/MacArabic.pm +0 -0
  214. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/lib/Image/ExifTool/Charset/MacChineseCN.pm +0 -0
  215. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/lib/Image/ExifTool/Charset/MacChineseTW.pm +0 -0
  216. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/lib/Image/ExifTool/Charset/MacCroatian.pm +0 -0
  217. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/lib/Image/ExifTool/Charset/MacCyrillic.pm +0 -0
  218. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/lib/Image/ExifTool/Charset/MacGreek.pm +0 -0
  219. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/lib/Image/ExifTool/Charset/MacHebrew.pm +0 -0
  220. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/lib/Image/ExifTool/Charset/MacIceland.pm +0 -0
  221. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/lib/Image/ExifTool/Charset/MacJapanese.pm +0 -0
  222. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/lib/Image/ExifTool/Charset/MacKorean.pm +0 -0
  223. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/lib/Image/ExifTool/Charset/MacLatin2.pm +0 -0
  224. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/lib/Image/ExifTool/Charset/MacRSymbol.pm +0 -0
  225. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/lib/Image/ExifTool/Charset/MacRoman.pm +0 -0
  226. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/lib/Image/ExifTool/Charset/MacRomanian.pm +0 -0
  227. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/lib/Image/ExifTool/Charset/MacThai.pm +0 -0
  228. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/lib/Image/ExifTool/Charset/MacTurkish.pm +0 -0
  229. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/lib/Image/ExifTool/Charset/PDFDoc.pm +0 -0
  230. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/lib/Image/ExifTool/Charset/ShiftJIS.pm +0 -0
  231. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/lib/Image/ExifTool/Charset/Symbol.pm +0 -0
  232. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/lib/Image/ExifTool/Charset/Thai.pm +0 -0
  233. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/lib/Image/ExifTool/Charset/Turkish.pm +0 -0
  234. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/lib/Image/ExifTool/Charset/Vietnam.pm +0 -0
  235. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/DICOM.pm +3874 -0
  236. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/DJI.pm +71 -0
  237. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/DNG.pm +835 -0
  238. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/DPX.pm +182 -0
  239. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/DV.pm +319 -0
  240. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/DarwinCore.pm +322 -0
  241. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/DjVu.pm +376 -0
  242. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/EXE.pm +1401 -0
  243. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Exif.pm +6097 -0
  244. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/FLAC.pm +297 -0
  245. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/FLIF.pm +353 -0
  246. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/FLIR.pm +1535 -0
  247. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Fixup.pm +366 -0
  248. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Flash.pm +755 -0
  249. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/FlashPix.pm +1960 -0
  250. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Font.pm +647 -0
  251. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/FotoStation.pm +261 -0
  252. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/FujiFilm.pm +1264 -0
  253. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/GE.pm +81 -0
  254. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/GIF.pm +542 -0
  255. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/GIMP.pm +258 -0
  256. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/GPS.pm +559 -0
  257. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/GeoTiff.pm +2263 -0
  258. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Geotag.pm +1287 -0
  259. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/H264.pm +1110 -0
  260. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/HP.pm +263 -0
  261. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/HTML.pm +576 -0
  262. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/HtmlDump.pm +898 -0
  263. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/ICC_Profile.pm +1013 -0
  264. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/ID3.pm +1570 -0
  265. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/IPTC.pm +1264 -0
  266. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/ISO.pm +206 -0
  267. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/ITC.pm +215 -0
  268. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Import.pm +329 -0
  269. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/InDesign.pm +277 -0
  270. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/JPEG.pm +605 -0
  271. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/JPEGDigest.pm +2616 -0
  272. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/JVC.pm +130 -0
  273. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Jpeg2000.pm +898 -0
  274. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Kodak.pm +2096 -0
  275. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/KyoceraRaw.pm +173 -0
  276. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/LNK.pm +723 -0
  277. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Lang/cs.pm +1588 -0
  278. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Lang/de.pm +8692 -0
  279. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Lang/en_ca.pm +940 -0
  280. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Lang/en_gb.pm +983 -0
  281. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Lang/es.pm +4019 -0
  282. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Lang/fi.pm +2854 -0
  283. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Lang/fr.pm +4758 -0
  284. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Lang/it.pm +7918 -0
  285. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Lang/ja.pm +5835 -0
  286. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Lang/ko.pm +2330 -0
  287. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Lang/nl.pm +3222 -0
  288. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Lang/pl.pm +1276 -0
  289. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Lang/ru.pm +768 -0
  290. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Lang/sv.pm +638 -0
  291. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Lang/tr.pm +544 -0
  292. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Lang/zh_cn.pm +1330 -0
  293. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Lang/zh_tw.pm +801 -0
  294. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Leaf.pm +517 -0
  295. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Lytro.pm +217 -0
  296. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/M2TS.pm +729 -0
  297. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/MIE.pm +2564 -0
  298. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/MIEUnits.pod +377 -0
  299. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/MIFF.pm +279 -0
  300. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/MNG.pm +684 -0
  301. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/MOI.pm +158 -0
  302. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/MPC.pm +156 -0
  303. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/MPEG.pm +736 -0
  304. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/MPF.pm +288 -0
  305. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/MWG.pm +757 -0
  306. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/MXF.pm +3031 -0
  307. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/MakerNotes.pm +1745 -0
  308. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Matroska.pm +932 -0
  309. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Microsoft.pm +904 -0
  310. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Minolta.pm +2996 -0
  311. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/MinoltaRaw.pm +535 -0
  312. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Motorola.pm +62 -0
  313. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Nikon.pm +8173 -0
  314. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/NikonCapture.pm +940 -0
  315. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/NikonCustom.pm +8682 -0
  316. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Nintendo.pm +128 -0
  317. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/OOXML.pm +409 -0
  318. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Ogg.pm +240 -0
  319. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Olympus.pm +3998 -0
  320. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/OpenEXR.pm +323 -0
  321. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Opus.pm +98 -0
  322. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/PDF.pm +2367 -0
  323. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/PGF.pm +143 -0
  324. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/PICT.pm +1260 -0
  325. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/PLIST.pm +448 -0
  326. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/PLUS.pm +2607 -0
  327. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/PNG.pm +1255 -0
  328. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/PPM.pm +169 -0
  329. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/PSP.pm +306 -0
  330. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Palm.pm +403 -0
  331. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Panasonic.pm +2378 -0
  332. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/PanasonicRaw.pm +643 -0
  333. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Pentax.pm +6135 -0
  334. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/PhaseOne.pm +725 -0
  335. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/PhotoCD.pm +507 -0
  336. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/PhotoMechanic.pm +256 -0
  337. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Photoshop.pm +952 -0
  338. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/PostScript.pm +699 -0
  339. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/PrintIM.pm +125 -0
  340. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Qualcomm.pm +1344 -0
  341. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/QuickTime.pm +6708 -0
  342. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/README +1010 -0
  343. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/RIFF.pm +1587 -0
  344. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/RSRC.pm +241 -0
  345. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/RTF.pm +383 -0
  346. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Radiance.pm +144 -0
  347. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Rawzor.pm +189 -0
  348. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Real.pm +739 -0
  349. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Reconyx.pm +190 -0
  350. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Ricoh.pm +1150 -0
  351. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Samsung.pm +1271 -0
  352. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Sanyo.pm +440 -0
  353. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Scalado.pm +141 -0
  354. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Shift.pl +627 -0
  355. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Shortcuts.pm +338 -0
  356. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Sigma.pm +764 -0
  357. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/SigmaRaw.pm +670 -0
  358. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Sony.pm +9800 -0
  359. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/SonyIDC.pm +333 -0
  360. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Stim.pm +196 -0
  361. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/TagInfoXML.pm +827 -0
  362. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/TagLookup.pm +9515 -0
  363. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/TagNames.pod +30714 -0
  364. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Theora.pm +145 -0
  365. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Torrent.pm +317 -0
  366. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Unknown.pm +66 -0
  367. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/VCard.pm +405 -0
  368. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Vorbis.pm +255 -0
  369. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/WriteCanonRaw.pl +637 -0
  370. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/WriteExif.pl +2483 -0
  371. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/WriteIPTC.pl +706 -0
  372. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/WritePDF.pl +771 -0
  373. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/WritePNG.pl +390 -0
  374. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/WritePhotoshop.pl +266 -0
  375. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/WritePostScript.pl +772 -0
  376. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/WriteQuickTime.pl +358 -0
  377. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/WriteXMP.pl +1381 -0
  378. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/Writer.pl +6322 -0
  379. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/XMP.pm +3897 -0
  380. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/XMP2.pl +1705 -0
  381. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/XMPStruct.pl +843 -0
  382. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/ZIP.pm +667 -0
  383. data/bin/Image-ExifTool-10.40/lib/Image/ExifTool/iWork.pm +223 -0
  384. data/bin/Image-ExifTool-10.40/perl-Image-ExifTool.spec +113 -0
  385. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/AFCP.t +0 -0
  386. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/AFCP_2.out +0 -0
  387. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/AFCP_3.out +0 -0
  388. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/AIFF.t +0 -0
  389. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/AIFF_2.out +0 -0
  390. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/APE.t +0 -0
  391. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/APE_2.out +0 -0
  392. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/APE_3.out +0 -0
  393. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/ASF.t +0 -0
  394. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/ASF_2.out +0 -0
  395. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Apple.t +0 -0
  396. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Apple_2.out +0 -0
  397. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Audible.t +0 -0
  398. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Audible_2.out +0 -0
  399. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/BMP.t +0 -0
  400. data/bin/Image-ExifTool-10.40/t/BMP_2.out +24 -0
  401. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/BPG.t +0 -0
  402. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/BPG_2.out +0 -0
  403. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/BigTIFF.t +0 -0
  404. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/BigTIFF_2.out +0 -0
  405. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Canon.t +0 -0
  406. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/CanonRaw.t +0 -0
  407. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/CanonRaw_2.out +0 -0
  408. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/CanonRaw_4.out +0 -0
  409. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/CanonRaw_5.out +0 -0
  410. data/bin/Image-ExifTool-10.40/t/CanonRaw_6.out +233 -0
  411. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/CanonRaw_7.out +0 -0
  412. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/CanonVRD.t +0 -0
  413. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/CanonVRD_11.out +0 -0
  414. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/CanonVRD_12.out +0 -0
  415. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/CanonVRD_13.out +0 -0
  416. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/CanonVRD_14.out +0 -0
  417. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/CanonVRD_15.out +0 -0
  418. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/CanonVRD_16.out +0 -0
  419. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/CanonVRD_17.out +0 -0
  420. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/CanonVRD_18.out +0 -0
  421. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/CanonVRD_19.out +0 -0
  422. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/CanonVRD_2.out +0 -0
  423. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/CanonVRD_20.out +0 -0
  424. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/CanonVRD_21.out +0 -0
  425. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/CanonVRD_3.out +0 -0
  426. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/CanonVRD_4.out +0 -0
  427. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/CanonVRD_5.out +0 -0
  428. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/CanonVRD_6.out +0 -0
  429. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/CanonVRD_7.out +0 -0
  430. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/CanonVRD_8.out +0 -0
  431. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/CanonVRD_9.out +0 -0
  432. data/bin/Image-ExifTool-10.40/t/Canon_2.out +358 -0
  433. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Canon_3.out +0 -0
  434. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Casio.t +0 -0
  435. data/bin/Image-ExifTool-10.40/t/Casio_2.out +72 -0
  436. data/bin/Image-ExifTool-10.40/t/Casio_3.out +102 -0
  437. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Casio_4.out +0 -0
  438. data/bin/Image-ExifTool-10.40/t/Casio_5.out +80 -0
  439. data/bin/Image-ExifTool-10.40/t/Casio_6.out +117 -0
  440. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/DICOM.t +0 -0
  441. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/DICOM_2.out +0 -0
  442. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/DNG.t +0 -0
  443. data/bin/Image-ExifTool-10.40/t/DNG_2.out +329 -0
  444. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/DNG_3.out +0 -0
  445. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/DPX.t +0 -0
  446. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/DPX_2.out +0 -0
  447. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/DV.t +0 -0
  448. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/DV_2.out +0 -0
  449. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/DjVu.t +0 -0
  450. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/DjVu_2.out +0 -0
  451. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/EXE.t +0 -0
  452. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/EXE_2.out +0 -0
  453. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/EXE_3.out +0 -0
  454. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/EXE_4.out +0 -0
  455. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/EXE_5.out +0 -0
  456. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/EXE_6.out +0 -0
  457. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/EXE_7.out +0 -0
  458. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/ExifTool.t +0 -0
  459. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/ExifTool_16.out +0 -0
  460. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/ExifTool_17.out +0 -0
  461. data/bin/Image-ExifTool-10.40/t/ExifTool_2.out +427 -0
  462. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/ExifTool_20.out +0 -0
  463. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/ExifTool_21.out +0 -0
  464. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/ExifTool_22.out +0 -0
  465. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/ExifTool_23.out +0 -0
  466. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/ExifTool_24.out +0 -0
  467. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/ExifTool_25.out +0 -0
  468. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/ExifTool_26.out +0 -0
  469. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/ExifTool_27.out +0 -0
  470. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/ExifTool_28.out +0 -0
  471. data/bin/Image-ExifTool-10.40/t/ExifTool_29.out +426 -0
  472. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/ExifTool_3.out +0 -0
  473. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/ExifTool_30.out +0 -0
  474. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/ExifTool_4.out +0 -0
  475. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/ExifTool_5.out +0 -0
  476. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/ExifTool_6.out +0 -0
  477. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/ExifTool_7.out +0 -0
  478. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/ExifTool_8.out +0 -0
  479. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/ExifTool_9.out +0 -0
  480. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/FLAC.t +0 -0
  481. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/FLAC_2.out +0 -0
  482. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/FLAC_3.out +0 -0
  483. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/FLIF.t +0 -0
  484. data/bin/Image-ExifTool-10.40/t/FLIF_2.out +51 -0
  485. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/FLIF_3.out +0 -0
  486. data/bin/Image-ExifTool-10.40/t/FLIF_4.out +18 -0
  487. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/FLIF_5.out +0 -0
  488. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/FLIF_6.out +0 -0
  489. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/FLIR.t +0 -0
  490. data/bin/Image-ExifTool-10.40/t/FLIR_2.out +118 -0
  491. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/FLIR_3.out +0 -0
  492. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Flash.t +0 -0
  493. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/FlashPix.t +0 -0
  494. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/FlashPix_2.out +0 -0
  495. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Flash_2.out +0 -0
  496. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Flash_3.out +0 -0
  497. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Font.t +0 -0
  498. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Font_2.out +0 -0
  499. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Font_3.out +0 -0
  500. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Font_4.out +0 -0
  501. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Font_5.out +0 -0
  502. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Font_6.out +0 -0
  503. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Font_7.out +0 -0
  504. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/FotoStation.t +0 -0
  505. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/FotoStation_2.out +0 -0
  506. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/FotoStation_3.out +0 -0
  507. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/FujiFilm.t +0 -0
  508. data/bin/Image-ExifTool-10.40/t/FujiFilm_2.out +89 -0
  509. data/bin/Image-ExifTool-10.40/t/FujiFilm_3.out +90 -0
  510. data/bin/Image-ExifTool-10.40/t/FujiFilm_4.out +143 -0
  511. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/FujiFilm_5.out +0 -0
  512. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/GE.t +0 -0
  513. data/bin/Image-ExifTool-10.40/t/GE_2.out +86 -0
  514. data/bin/Image-ExifTool-10.40/t/GE_3.out +86 -0
  515. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/GIF.t +0 -0
  516. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/GIF_2.out +0 -0
  517. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/GIF_3.out +0 -0
  518. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/GIF_4.out +0 -0
  519. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/GIMP.t +0 -0
  520. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/GIMP_2.out +0 -0
  521. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/GPS.t +0 -0
  522. data/bin/Image-ExifTool-10.40/t/GPS_2.out +96 -0
  523. data/bin/Image-ExifTool-10.40/t/GPS_3.out +98 -0
  524. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/GeoTiff.t +0 -0
  525. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/GeoTiff_2.out +0 -0
  526. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/GeoTiff_3.out +0 -0
  527. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/GeoTiff_4.out +0 -0
  528. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Geotag.t +0 -0
  529. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Geotag_10.out +0 -0
  530. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Geotag_11.out +0 -0
  531. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Geotag_2.out +0 -0
  532. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Geotag_3.out +0 -0
  533. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Geotag_5.out +0 -0
  534. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Geotag_6.out +0 -0
  535. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Geotag_7.out +0 -0
  536. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Geotag_8.out +0 -0
  537. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Geotag_9.out +0 -0
  538. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/HTML.t +0 -0
  539. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/HTML_2.out +0 -0
  540. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/IPTC.t +0 -0
  541. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/IPTC_2.out +0 -0
  542. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/IPTC_4.out +0 -0
  543. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/IPTC_5.out +0 -0
  544. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/IPTC_6.out +0 -0
  545. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/IPTC_7.out +0 -0
  546. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/IPTC_8.out +0 -0
  547. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/ISO.t +0 -0
  548. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/ISO_2.out +0 -0
  549. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/ITC.t +0 -0
  550. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/ITC_2.out +0 -0
  551. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/InDesign.t +0 -0
  552. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/InDesign_2.out +0 -0
  553. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/InDesign_3.out +0 -0
  554. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/InDesign_4.out +0 -0
  555. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/JVC.t +0 -0
  556. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/JVC_2.out +0 -0
  557. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/JVC_3.out +0 -0
  558. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Jpeg2000.t +0 -0
  559. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Jpeg2000_2.out +0 -0
  560. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Jpeg2000_3.out +0 -0
  561. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Jpeg2000_4.out +0 -0
  562. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Kodak.t +0 -0
  563. data/bin/Image-ExifTool-10.40/t/Kodak_2.out +111 -0
  564. data/bin/Image-ExifTool-10.40/t/Kodak_3.out +121 -0
  565. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/KyoceraRaw.t +0 -0
  566. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/KyoceraRaw_2.out +0 -0
  567. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/LNK.t +0 -0
  568. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/LNK_2.out +0 -0
  569. data/bin/Image-ExifTool-10.40/t/Lang.t +42 -0
  570. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Lang_1.out +0 -0
  571. data/bin/Image-ExifTool-10.40/t/Lang_10.out +47 -0
  572. data/bin/Image-ExifTool-10.40/t/Lang_11.out +47 -0
  573. data/bin/Image-ExifTool-10.40/t/Lang_12.out +47 -0
  574. data/bin/Image-ExifTool-10.40/t/Lang_13.out +47 -0
  575. data/bin/Image-ExifTool-10.40/t/Lang_14.out +47 -0
  576. data/bin/Image-ExifTool-10.40/t/Lang_15.out +47 -0
  577. data/bin/Image-ExifTool-10.40/t/Lang_16.out +47 -0
  578. data/bin/Image-ExifTool-10.40/t/Lang_17.out +47 -0
  579. data/bin/Image-ExifTool-10.40/t/Lang_18.out +47 -0
  580. data/bin/Image-ExifTool-10.40/t/Lang_2.out +47 -0
  581. data/bin/Image-ExifTool-10.40/t/Lang_3.out +47 -0
  582. data/bin/Image-ExifTool-10.40/t/Lang_4.out +47 -0
  583. data/bin/Image-ExifTool-10.40/t/Lang_5.out +47 -0
  584. data/bin/Image-ExifTool-10.40/t/Lang_6.out +47 -0
  585. data/bin/Image-ExifTool-10.40/t/Lang_7.out +47 -0
  586. data/bin/Image-ExifTool-10.40/t/Lang_8.out +47 -0
  587. data/bin/Image-ExifTool-10.40/t/Lang_9.out +47 -0
  588. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Lytro.t +0 -0
  589. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Lytro_2.out +0 -0
  590. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/M2TS.t +0 -0
  591. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/M2TS_2.out +0 -0
  592. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/MIE.t +0 -0
  593. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/MIE_2.out +0 -0
  594. data/bin/Image-ExifTool-10.40/t/MIE_3.out +136 -0
  595. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/MIE_5.out +0 -0
  596. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/MIE_6.out +0 -0
  597. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/MIFF.t +0 -0
  598. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/MIFF_2.out +0 -0
  599. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/MOI.t +0 -0
  600. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/MOI_2.out +0 -0
  601. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/MP3.t +0 -0
  602. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/MP3_2.out +0 -0
  603. data/bin/Image-ExifTool-10.40/t/MWG.t +99 -0
  604. data/bin/Image-ExifTool-10.40/t/MWG_2.out +13 -0
  605. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/MWG_3.out +0 -0
  606. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/MWG_4.out +0 -0
  607. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/MWG_5.out +0 -0
  608. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/MWG_6.out +0 -0
  609. data/bin/Image-ExifTool-10.40/t/MWG_7.out +11 -0
  610. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/MXF.t +0 -0
  611. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/MXF_2.out +0 -0
  612. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Matroska.t +0 -0
  613. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Matroska_2.out +0 -0
  614. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Minolta.t +0 -0
  615. data/bin/Image-ExifTool-10.40/t/Minolta_2.out +135 -0
  616. data/bin/Image-ExifTool-10.40/t/Minolta_3.out +148 -0
  617. data/bin/Image-ExifTool-10.40/t/Minolta_4.out +150 -0
  618. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Motorola.t +0 -0
  619. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Motorola_2.out +0 -0
  620. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Nikon.t +0 -0
  621. data/bin/Image-ExifTool-10.40/t/Nikon_2.out +84 -0
  622. data/bin/Image-ExifTool-10.40/t/Nikon_3.out +100 -0
  623. data/bin/Image-ExifTool-10.40/t/Nikon_4.out +176 -0
  624. data/bin/Image-ExifTool-10.40/t/Nikon_5.out +169 -0
  625. data/bin/Image-ExifTool-10.40/t/Nikon_7.out +261 -0
  626. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Nikon_8.out +0 -0
  627. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Olympus.t +0 -0
  628. data/bin/Image-ExifTool-10.40/t/Olympus_2.out +81 -0
  629. data/bin/Image-ExifTool-10.40/t/Olympus_3.out +83 -0
  630. data/bin/Image-ExifTool-10.40/t/Olympus_4.out +194 -0
  631. data/bin/Image-ExifTool-10.40/t/Olympus_5.out +266 -0
  632. data/bin/Image-ExifTool-10.40/t/Olympus_6.out +153 -0
  633. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Olympus_7.out +0 -0
  634. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Olympus_8.out +0 -0
  635. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/OpenEXR.t +0 -0
  636. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/OpenEXR_2.out +0 -0
  637. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Opus.t +0 -0
  638. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Opus_2.out +0 -0
  639. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PDF.t +0 -0
  640. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PDF_10.out +0 -0
  641. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PDF_11.out +0 -0
  642. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PDF_12.out +0 -0
  643. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PDF_14.out +0 -0
  644. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PDF_15.out +0 -0
  645. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PDF_16.out +0 -0
  646. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PDF_17.out +0 -0
  647. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PDF_18.out +0 -0
  648. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PDF_19.out +0 -0
  649. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PDF_2.out +0 -0
  650. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PDF_20.out +0 -0
  651. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PDF_22.out +0 -0
  652. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PDF_4.out +0 -0
  653. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PDF_5.out +0 -0
  654. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PDF_6.out +0 -0
  655. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PDF_7.out +0 -0
  656. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PDF_8.out +0 -0
  657. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PDF_9.out +0 -0
  658. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PGF.t +0 -0
  659. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PGF_2.out +0 -0
  660. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PICT.t +0 -0
  661. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PICT_2.out +0 -0
  662. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PLIST.t +0 -0
  663. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PLIST_2.out +0 -0
  664. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PLIST_3.out +0 -0
  665. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PLUS.t +0 -0
  666. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PLUS_2.out +0 -0
  667. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PNG.t +0 -0
  668. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PNG_2.out +0 -0
  669. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PNG_3.out +0 -0
  670. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PNG_4.out +0 -0
  671. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PNG_5.out +0 -0
  672. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PPM.t +0 -0
  673. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PPM_2.out +0 -0
  674. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PPM_3.out +0 -0
  675. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PSP.t +0 -0
  676. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PSP_2.out +0 -0
  677. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Palm.t +0 -0
  678. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Palm_2.out +0 -0
  679. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Panasonic.t +0 -0
  680. data/bin/Image-ExifTool-10.40/t/Panasonic_2.out +101 -0
  681. data/bin/Image-ExifTool-10.40/t/Panasonic_3.out +121 -0
  682. data/bin/Image-ExifTool-10.40/t/Panasonic_4.out +206 -0
  683. data/bin/Image-ExifTool-10.40/t/Panasonic_5.out +244 -0
  684. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Pentax.t +0 -0
  685. data/bin/Image-ExifTool-10.40/t/Pentax_2.out +225 -0
  686. data/bin/Image-ExifTool-10.40/t/Pentax_3.out +266 -0
  687. data/bin/Image-ExifTool-10.40/t/Pentax_4.out +132 -0
  688. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PhaseOne.t +0 -0
  689. data/bin/Image-ExifTool-10.40/t/PhaseOne_2.out +99 -0
  690. data/bin/Image-ExifTool-10.40/t/PhaseOne_3.out +170 -0
  691. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PhotoCD.t +0 -0
  692. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PhotoCD_2.out +0 -0
  693. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PhotoMechanic.t +0 -0
  694. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PhotoMechanic_2.out +0 -0
  695. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PhotoMechanic_3.out +0 -0
  696. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Photoshop.t +0 -0
  697. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Photoshop_2.out +0 -0
  698. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Photoshop_3.out +0 -0
  699. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PostScript.t +0 -0
  700. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PostScript_2.out +0 -0
  701. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/PostScript_3.out +0 -0
  702. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/QuickTime.t +0 -0
  703. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/QuickTime_2.out +0 -0
  704. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/QuickTime_3.out +0 -0
  705. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/QuickTime_4.out +0 -0
  706. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/QuickTime_5.out +0 -0
  707. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/RIFF.t +0 -0
  708. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/RIFF_2.out +0 -0
  709. data/bin/Image-ExifTool-10.40/t/RIFF_3.out +55 -0
  710. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/RIFF_4.out +0 -0
  711. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/RTF.t +0 -0
  712. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/RTF_2.out +0 -0
  713. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Radiance.t +0 -0
  714. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Radiance_2.out +0 -0
  715. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Real.t +0 -0
  716. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Real_2.out +0 -0
  717. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Real_3.out +0 -0
  718. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Real_4.out +0 -0
  719. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Ricoh.t +0 -0
  720. data/bin/Image-ExifTool-10.40/t/Ricoh_2.out +72 -0
  721. data/bin/Image-ExifTool-10.40/t/Ricoh_3.out +100 -0
  722. data/bin/Image-ExifTool-10.40/t/Ricoh_4.out +114 -0
  723. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Sanyo.t +0 -0
  724. data/bin/Image-ExifTool-10.40/t/Sanyo_2.out +103 -0
  725. data/bin/Image-ExifTool-10.40/t/Sanyo_3.out +113 -0
  726. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Sigma.t +0 -0
  727. data/bin/Image-ExifTool-10.40/t/Sigma_2.out +93 -0
  728. data/bin/Image-ExifTool-10.40/t/Sigma_3.out +96 -0
  729. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Sigma_4.out +0 -0
  730. data/bin/Image-ExifTool-10.40/t/Sigma_5.out +194 -0
  731. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Sony.t +0 -0
  732. data/bin/Image-ExifTool-10.40/t/Sony_2.out +86 -0
  733. data/bin/Image-ExifTool-10.40/t/Sony_3.out +87 -0
  734. data/bin/Image-ExifTool-10.40/t/Sony_5.out +34 -0
  735. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/TestLib.pm +0 -0
  736. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Torrent.t +0 -0
  737. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Torrent_2.out +0 -0
  738. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Unknown.t +0 -0
  739. data/bin/Image-ExifTool-10.40/t/Unknown_2.out +92 -0
  740. data/bin/Image-ExifTool-10.40/t/Unknown_3.out +92 -0
  741. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/VCard.t +0 -0
  742. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/VCard_2.out +0 -0
  743. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/VCard_3.out +0 -0
  744. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Vorbis.t +0 -0
  745. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Vorbis_2.out +0 -0
  746. data/bin/Image-ExifTool-10.40/t/Writer.t +1071 -0
  747. data/bin/Image-ExifTool-10.40/t/Writer_10.out +246 -0
  748. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_11.out +0 -0
  749. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_13.out +0 -0
  750. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_14.out +0 -0
  751. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_15.out +0 -0
  752. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_16.out +0 -0
  753. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_17.out +0 -0
  754. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_18.out +0 -0
  755. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_19.out +0 -0
  756. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_2.out +0 -0
  757. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_22.out +0 -0
  758. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_24.out +0 -0
  759. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_25.out +0 -0
  760. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_26.out +0 -0
  761. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_27.out +0 -0
  762. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_28.out +0 -0
  763. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_29.out +0 -0
  764. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_30.out +0 -0
  765. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_31.out +0 -0
  766. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_32.out +0 -0
  767. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_33.out +0 -0
  768. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_34.out +0 -0
  769. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_35.out +0 -0
  770. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_36.out +0 -0
  771. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_37.out +0 -0
  772. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_38.out +0 -0
  773. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_39.out +0 -0
  774. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_4.out +0 -0
  775. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_40.out +0 -0
  776. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_41.out +0 -0
  777. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_42.out +0 -0
  778. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_43.out +0 -0
  779. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_44.out +0 -0
  780. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_45.out +0 -0
  781. data/bin/Image-ExifTool-10.40/t/Writer_46.out +111 -0
  782. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_47.out +0 -0
  783. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_48.out +0 -0
  784. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_50.out +0 -0
  785. data/bin/Image-ExifTool-10.40/t/Writer_51.out +414 -0
  786. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_52.out +0 -0
  787. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_53.out +0 -0
  788. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_54.out +0 -0
  789. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_55.out +0 -0
  790. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_56.out +0 -0
  791. data/bin/Image-ExifTool-10.40/t/Writer_58.out +44 -0
  792. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_6.out +0 -0
  793. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/Writer_7.out +0 -0
  794. data/bin/Image-ExifTool-10.40/t/Writer_9.out +243 -0
  795. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP.t +0 -0
  796. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP_10.out +0 -0
  797. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP_11.out +0 -0
  798. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP_12.out +0 -0
  799. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP_13.out +0 -0
  800. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP_14.out +0 -0
  801. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP_15.out +0 -0
  802. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP_16.out +0 -0
  803. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP_17.out +0 -0
  804. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP_18.out +0 -0
  805. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP_19.out +0 -0
  806. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP_2.out +0 -0
  807. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP_20.out +0 -0
  808. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP_21.out +0 -0
  809. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP_22.out +0 -0
  810. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP_23.out +0 -0
  811. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP_24.out +0 -0
  812. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP_25.out +0 -0
  813. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP_26.out +0 -0
  814. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP_27.out +0 -0
  815. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP_28.out +0 -0
  816. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP_29.out +0 -0
  817. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP_3.out +0 -0
  818. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP_30.out +0 -0
  819. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP_31.out +0 -0
  820. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP_32.out +0 -0
  821. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP_34.out +0 -0
  822. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP_36.out +0 -0
  823. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP_37.out +0 -0
  824. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP_39.out +0 -0
  825. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP_40.out +0 -0
  826. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP_41.out +0 -0
  827. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP_42.out +0 -0
  828. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP_43.out +0 -0
  829. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP_44.out +0 -0
  830. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP_45.out +0 -0
  831. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP_5.out +0 -0
  832. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP_6.out +0 -0
  833. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP_7.out +0 -0
  834. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP_8.out +0 -0
  835. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/XMP_9.out +0 -0
  836. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/ZIP.t +0 -0
  837. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/ZIP_2.out +0 -0
  838. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/ZIP_3.out +0 -0
  839. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/ZIP_4.out +0 -0
  840. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/ZIP_5.out +0 -0
  841. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/ZIP_6.out +0 -0
  842. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/ZIP_7.out +0 -0
  843. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/AFCP.jpg +0 -0
  844. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/AIFF.aif +0 -0
  845. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/APE.ape +0 -0
  846. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/APE.mpc +0 -0
  847. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/ASF.wmv +0 -0
  848. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Apple.jpg +0 -0
  849. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Audible.aa +0 -0
  850. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/BMP.bmp +0 -0
  851. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/BPG.bpg +0 -0
  852. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/BigTIFF.btf +0 -0
  853. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Canon.jpg +0 -0
  854. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Canon1DmkIII.jpg +0 -0
  855. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/CanonRaw.cr2 +0 -0
  856. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/CanonRaw.crw +0 -0
  857. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/CanonVRD.dr4 +0 -0
  858. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/CanonVRD.vrd +0 -0
  859. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/CaptureOne.eip +0 -0
  860. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Casio.jpg +0 -0
  861. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Casio2.jpg +0 -0
  862. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/CasioQVCI.jpg +0 -0
  863. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/DICOM.dcm +0 -0
  864. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/DNG.dng +0 -0
  865. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/DPX.dpx +0 -0
  866. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/DV.dv +0 -0
  867. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/DjVu.djvu +0 -0
  868. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/EXE.a +0 -0
  869. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/EXE.dylib +0 -0
  870. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/EXE.elf +0 -0
  871. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/EXE.exe +0 -0
  872. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/EXE.macho +0 -0
  873. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/EXE.so +0 -0
  874. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/ExifTool.jpg +0 -0
  875. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/ExifTool.tif +0 -0
  876. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/ExtendedXMP.jpg +0 -0
  877. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/FLAC.flac +0 -0
  878. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/FLAC.ogg +0 -0
  879. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/FLIF.flif +0 -0
  880. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/FLIR.fpf +0 -0
  881. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/FLIR.jpg +0 -0
  882. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Flash.flv +0 -0
  883. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Flash.swf +0 -0
  884. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/FlashPix.ppt +0 -0
  885. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Font.afm +0 -0
  886. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Font.dfont +0 -0
  887. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Font.pfa +0 -0
  888. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Font.pfb +0 -0
  889. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Font.pfm +0 -0
  890. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Font.ttf +0 -0
  891. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/FotoStation.jpg +0 -0
  892. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/FujiFilm.jpg +0 -0
  893. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/FujiFilm.raf +0 -0
  894. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/GE.jpg +0 -0
  895. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/GIF.gif +0 -0
  896. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/GIMP.xcf +0 -0
  897. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/GPS.jpg +0 -0
  898. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/GeoTiff.tif +0 -0
  899. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Geotag.gpx +0 -0
  900. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Geotag.igc +0 -0
  901. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Geotag.kml +0 -0
  902. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Geotag.log +0 -0
  903. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Geotag.xml +0 -0
  904. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Geotag2.log +0 -0
  905. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Geotag3.log +0 -0
  906. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/HTML.html +0 -0
  907. data/bin/Image-ExifTool-10.40/t/images/ICC_Profile.icc +0 -0
  908. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/IPTC.jpg +0 -0
  909. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/ISO.iso +0 -0
  910. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/ITC.itc +0 -0
  911. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/InDesign.indd +0 -0
  912. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/JVC.jpg +0 -0
  913. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/JVC2.jpg +0 -0
  914. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Jpeg2000.j2c +0 -0
  915. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Jpeg2000.jp2 +0 -0
  916. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Kodak.jpg +0 -0
  917. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/KyoceraRaw.raw +0 -0
  918. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/LNK.lnk +0 -0
  919. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Lytro.lfp +0 -0
  920. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/M2TS.mts +0 -0
  921. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/MIE.mie +0 -0
  922. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/MIFF.miff +0 -0
  923. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/MOI.moi +0 -0
  924. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/MP3.mp3 +0 -0
  925. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/MWG.jpg +0 -0
  926. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/MXF.mxf +0 -0
  927. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Matroska.mkv +0 -0
  928. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Minolta.jpg +0 -0
  929. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Minolta.mrw +0 -0
  930. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Motorola.jpg +0 -0
  931. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Nikon.jpg +0 -0
  932. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Nikon.nef +0 -0
  933. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/NikonD2Hs.jpg +0 -0
  934. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/NikonD70.jpg +0 -0
  935. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/OOXML.docx +0 -0
  936. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Olympus.dss +0 -0
  937. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Olympus.jpg +0 -0
  938. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Olympus2.jpg +0 -0
  939. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/OlympusE1.jpg +0 -0
  940. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/OpenDoc.ods +0 -0
  941. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/OpenEXR.exr +0 -0
  942. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Opus.opus +0 -0
  943. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/PDF.pdf +0 -0
  944. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/PDF2.pdf +0 -0
  945. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/PGF.pgf +0 -0
  946. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/PICT.pict +0 -0
  947. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/PLIST-bin.plist +0 -0
  948. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/PLIST-xml.plist +0 -0
  949. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/PLUS.xmp +0 -0
  950. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/PNG.png +0 -0
  951. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/PPM.ppm +0 -0
  952. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/PSP.psp +0 -0
  953. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Palm.mobi +0 -0
  954. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Panasonic.jpg +0 -0
  955. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Panasonic.rw2 +0 -0
  956. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Pentax.avi +0 -0
  957. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Pentax.jpg +0 -0
  958. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/PhaseOne.iiq +0 -0
  959. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/PhotoCD.pcd +0 -0
  960. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/PhotoMechanic.jpg +0 -0
  961. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Photoshop.psd +0 -0
  962. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/PostScript.eps +0 -0
  963. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/QuickTime.m4a +0 -0
  964. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/QuickTime.mov +0 -0
  965. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/RIFF.avi +0 -0
  966. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/RIFF.wav +0 -0
  967. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/RIFF.webp +0 -0
  968. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/RTF.rtf +0 -0
  969. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Radiance.hdr +0 -0
  970. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Real.ra +0 -0
  971. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Real.ram +0 -0
  972. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Real.rm +0 -0
  973. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Ricoh.jpg +0 -0
  974. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Ricoh2.jpg +0 -0
  975. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Sanyo.jpg +0 -0
  976. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Sigma.jpg +0 -0
  977. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Sigma.x3f +0 -0
  978. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/SigmaDP2.x3f +0 -0
  979. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Sony.jpg +0 -0
  980. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Sony.pmp +0 -0
  981. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Torrent.torrent +0 -0
  982. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Unknown.jpg +0 -0
  983. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/VCard.ics +0 -0
  984. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/VCard.vcf +0 -0
  985. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Vorbis.ogg +0 -0
  986. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/Writer.jpg +0 -0
  987. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/XMP.inx +0 -0
  988. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/XMP.jpg +0 -0
  989. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/XMP.svg +0 -0
  990. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/XMP.xml +0 -0
  991. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/XMP.xmp +0 -0
  992. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/XMP2.xmp +0 -0
  993. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/XMP3.xmp +0 -0
  994. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/XMP4.xmp +0 -0
  995. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/XMP5.xmp +0 -0
  996. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/XMP6.xmp +0 -0
  997. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/ZIP.gz +0 -0
  998. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/ZIP.zip +0 -0
  999. data/bin/{Image-ExifTool-10.31 → Image-ExifTool-10.40}/t/images/iWork.numbers +0 -0
  1000. data/lib/exiftool_vendored/version.rb +1 -1
  1001. metadata +1000 -997
  1002. data/bin/Image-ExifTool-10.31/Changes +0 -7604
  1003. data/bin/Image-ExifTool-10.31/MANIFEST +0 -995
  1004. data/bin/Image-ExifTool-10.31/META.json +0 -51
  1005. data/bin/Image-ExifTool-10.31/META.yml +0 -31
  1006. data/bin/Image-ExifTool-10.31/README +0 -239
  1007. data/bin/Image-ExifTool-10.31/config_files/time_zone.config +0 -56
  1008. data/bin/Image-ExifTool-10.31/exiftool +0 -6431
  1009. data/bin/Image-ExifTool-10.31/html/ExifTool.html +0 -2114
  1010. data/bin/Image-ExifTool-10.31/html/Shift.html +0 -209
  1011. data/bin/Image-ExifTool-10.31/html/TagNames/BMP.html +0 -110
  1012. data/bin/Image-ExifTool-10.31/html/TagNames/Canon.html +0 -9740
  1013. data/bin/Image-ExifTool-10.31/html/TagNames/Composite.html +0 -739
  1014. data/bin/Image-ExifTool-10.31/html/TagNames/EXIF.html +0 -3482
  1015. data/bin/Image-ExifTool-10.31/html/TagNames/Extra.html +0 -469
  1016. data/bin/Image-ExifTool-10.31/html/TagNames/FLIF.html +0 -79
  1017. data/bin/Image-ExifTool-10.31/html/TagNames/FlashPix.html +0 -1465
  1018. data/bin/Image-ExifTool-10.31/html/TagNames/FujiFilm.html +0 -849
  1019. data/bin/Image-ExifTool-10.31/html/TagNames/MWG.html +0 -584
  1020. data/bin/Image-ExifTool-10.31/html/TagNames/Minolta.html +0 -2633
  1021. data/bin/Image-ExifTool-10.31/html/TagNames/Nikon.html +0 -6002
  1022. data/bin/Image-ExifTool-10.31/html/TagNames/Olympus.html +0 -3655
  1023. data/bin/Image-ExifTool-10.31/html/TagNames/Panasonic.html +0 -1700
  1024. data/bin/Image-ExifTool-10.31/html/TagNames/PhaseOne.html +0 -253
  1025. data/bin/Image-ExifTool-10.31/html/TagNames/Photoshop.html +0 -739
  1026. data/bin/Image-ExifTool-10.31/html/TagNames/Sony.html +0 -10219
  1027. data/bin/Image-ExifTool-10.31/html/TagNames/XMP.html +0 -9332
  1028. data/bin/Image-ExifTool-10.31/html/ancient_history.html +0 -8209
  1029. data/bin/Image-ExifTool-10.31/html/data_members.html +0 -280
  1030. data/bin/Image-ExifTool-10.31/html/exiftool_pod.html +0 -2567
  1031. data/bin/Image-ExifTool-10.31/html/faq.html +0 -1589
  1032. data/bin/Image-ExifTool-10.31/html/filename.html +0 -352
  1033. data/bin/Image-ExifTool-10.31/html/geotag.html +0 -658
  1034. data/bin/Image-ExifTool-10.31/html/history.html +0 -375
  1035. data/bin/Image-ExifTool-10.31/html/idiosyncracies.html +0 -272
  1036. data/bin/Image-ExifTool-10.31/html/index.html +0 -1358
  1037. data/bin/Image-ExifTool-10.31/html/install.html +0 -259
  1038. data/bin/Image-ExifTool-10.31/html/under.html +0 -128
  1039. data/bin/Image-ExifTool-10.31/lib/File/RandomAccess.pm +0 -378
  1040. data/bin/Image-ExifTool-10.31/lib/File/RandomAccess.pod +0 -231
  1041. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool.pm +0 -7765
  1042. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool.pod +0 -2556
  1043. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/AES.pm +0 -501
  1044. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/AFCP.pm +0 -286
  1045. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/AIFF.pm +0 -289
  1046. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/APE.pm +0 -282
  1047. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/APP12.pm +0 -322
  1048. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/ASF.pm +0 -885
  1049. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Apple.pm +0 -153
  1050. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Audible.pm +0 -317
  1051. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/BMP.pm +0 -179
  1052. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/BPG.pm +0 -251
  1053. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/BZZ.pm +0 -472
  1054. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/BigTIFF.pm +0 -282
  1055. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/BuildTagLookup.pm +0 -2563
  1056. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Canon.pm +0 -8926
  1057. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/CanonCustom.pm +0 -2667
  1058. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/CanonRaw.pm +0 -910
  1059. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/CanonVRD.pm +0 -2273
  1060. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/CaptureOne.pm +0 -235
  1061. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Casio.pm +0 -2058
  1062. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Charset.pm +0 -423
  1063. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/DICOM.pm +0 -3874
  1064. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/DJI.pm +0 -71
  1065. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/DNG.pm +0 -835
  1066. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/DPX.pm +0 -182
  1067. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/DV.pm +0 -319
  1068. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/DarwinCore.pm +0 -322
  1069. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/DjVu.pm +0 -376
  1070. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/EXE.pm +0 -1401
  1071. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Exif.pm +0 -6038
  1072. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/FLAC.pm +0 -297
  1073. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/FLIF.pm +0 -345
  1074. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/FLIR.pm +0 -1533
  1075. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Fixup.pm +0 -366
  1076. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Flash.pm +0 -755
  1077. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/FlashPix.pm +0 -1935
  1078. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Font.pm +0 -647
  1079. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/FotoStation.pm +0 -261
  1080. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/FujiFilm.pm +0 -1257
  1081. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/GE.pm +0 -81
  1082. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/GIF.pm +0 -542
  1083. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/GIMP.pm +0 -258
  1084. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/GPS.pm +0 -558
  1085. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/GeoTiff.pm +0 -2263
  1086. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Geotag.pm +0 -1287
  1087. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/H264.pm +0 -1110
  1088. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/HP.pm +0 -263
  1089. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/HTML.pm +0 -576
  1090. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/HtmlDump.pm +0 -898
  1091. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/ICC_Profile.pm +0 -1013
  1092. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/ID3.pm +0 -1570
  1093. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/IPTC.pm +0 -1264
  1094. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/ISO.pm +0 -206
  1095. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/ITC.pm +0 -215
  1096. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Import.pm +0 -329
  1097. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/InDesign.pm +0 -277
  1098. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/JPEG.pm +0 -605
  1099. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/JPEGDigest.pm +0 -2616
  1100. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/JVC.pm +0 -130
  1101. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Jpeg2000.pm +0 -898
  1102. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Kodak.pm +0 -2096
  1103. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/KyoceraRaw.pm +0 -173
  1104. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/LNK.pm +0 -723
  1105. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Lang/cs.pm +0 -1588
  1106. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Lang/de.pm +0 -8692
  1107. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Lang/en_ca.pm +0 -934
  1108. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Lang/en_gb.pm +0 -977
  1109. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Lang/es.pm +0 -4019
  1110. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Lang/fi.pm +0 -2854
  1111. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Lang/fr.pm +0 -4758
  1112. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Lang/it.pm +0 -7918
  1113. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Lang/ja.pm +0 -5835
  1114. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Lang/ko.pm +0 -2330
  1115. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Lang/nl.pm +0 -3222
  1116. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Lang/pl.pm +0 -1276
  1117. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Lang/ru.pm +0 -768
  1118. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Lang/sv.pm +0 -638
  1119. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Lang/tr.pm +0 -544
  1120. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Lang/zh_cn.pm +0 -1330
  1121. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Lang/zh_tw.pm +0 -801
  1122. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Leaf.pm +0 -517
  1123. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Lytro.pm +0 -217
  1124. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/M2TS.pm +0 -729
  1125. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/MIE.pm +0 -2564
  1126. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/MIEUnits.pod +0 -377
  1127. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/MIFF.pm +0 -279
  1128. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/MNG.pm +0 -684
  1129. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/MOI.pm +0 -158
  1130. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/MPC.pm +0 -156
  1131. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/MPEG.pm +0 -736
  1132. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/MPF.pm +0 -292
  1133. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/MWG.pm +0 -751
  1134. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/MXF.pm +0 -3031
  1135. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/MakerNotes.pm +0 -1745
  1136. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Matroska.pm +0 -932
  1137. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Microsoft.pm +0 -904
  1138. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Minolta.pm +0 -2993
  1139. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/MinoltaRaw.pm +0 -535
  1140. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Motorola.pm +0 -62
  1141. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Nikon.pm +0 -8155
  1142. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/NikonCapture.pm +0 -940
  1143. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/NikonCustom.pm +0 -8682
  1144. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Nintendo.pm +0 -128
  1145. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/OOXML.pm +0 -409
  1146. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Ogg.pm +0 -240
  1147. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Olympus.pm +0 -3989
  1148. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/OpenEXR.pm +0 -323
  1149. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Opus.pm +0 -98
  1150. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/PDF.pm +0 -2367
  1151. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/PGF.pm +0 -143
  1152. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/PICT.pm +0 -1260
  1153. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/PLIST.pm +0 -448
  1154. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/PLUS.pm +0 -2607
  1155. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/PNG.pm +0 -1255
  1156. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/PPM.pm +0 -169
  1157. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/PSP.pm +0 -306
  1158. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Palm.pm +0 -403
  1159. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Panasonic.pm +0 -2374
  1160. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/PanasonicRaw.pm +0 -643
  1161. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Pentax.pm +0 -6133
  1162. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/PhaseOne.pm +0 -707
  1163. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/PhotoCD.pm +0 -507
  1164. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/PhotoMechanic.pm +0 -256
  1165. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Photoshop.pm +0 -939
  1166. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/PostScript.pm +0 -699
  1167. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/PrintIM.pm +0 -125
  1168. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Qualcomm.pm +0 -1344
  1169. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/QuickTime.pm +0 -6697
  1170. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/README +0 -1000
  1171. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/RIFF.pm +0 -1587
  1172. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/RSRC.pm +0 -241
  1173. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/RTF.pm +0 -383
  1174. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Radiance.pm +0 -144
  1175. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Rawzor.pm +0 -189
  1176. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Real.pm +0 -739
  1177. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Reconyx.pm +0 -190
  1178. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Ricoh.pm +0 -1148
  1179. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Samsung.pm +0 -1269
  1180. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Sanyo.pm +0 -440
  1181. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Scalado.pm +0 -141
  1182. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Shift.pl +0 -627
  1183. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Shortcuts.pm +0 -338
  1184. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Sigma.pm +0 -760
  1185. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/SigmaRaw.pm +0 -670
  1186. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Sony.pm +0 -9634
  1187. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/SonyIDC.pm +0 -332
  1188. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Stim.pm +0 -196
  1189. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/TagInfoXML.pm +0 -827
  1190. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/TagLookup.pm +0 -9367
  1191. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/TagNames.pod +0 -30437
  1192. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Theora.pm +0 -145
  1193. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Torrent.pm +0 -317
  1194. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Unknown.pm +0 -66
  1195. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/VCard.pm +0 -405
  1196. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Vorbis.pm +0 -255
  1197. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/WriteCanonRaw.pl +0 -637
  1198. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/WriteExif.pl +0 -2472
  1199. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/WriteIPTC.pl +0 -706
  1200. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/WritePDF.pl +0 -771
  1201. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/WritePNG.pl +0 -390
  1202. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/WritePhotoshop.pl +0 -266
  1203. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/WritePostScript.pl +0 -772
  1204. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/WriteQuickTime.pl +0 -358
  1205. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/WriteXMP.pl +0 -1381
  1206. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/Writer.pl +0 -6260
  1207. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/XMP.pm +0 -4087
  1208. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/XMP2.pl +0 -1321
  1209. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/XMPStruct.pl +0 -843
  1210. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/ZIP.pm +0 -667
  1211. data/bin/Image-ExifTool-10.31/lib/Image/ExifTool/iWork.pm +0 -223
  1212. data/bin/Image-ExifTool-10.31/perl-Image-ExifTool.spec +0 -113
  1213. data/bin/Image-ExifTool-10.31/t/BMP_2.out +0 -23
  1214. data/bin/Image-ExifTool-10.31/t/CanonRaw_6.out +0 -233
  1215. data/bin/Image-ExifTool-10.31/t/Canon_2.out +0 -358
  1216. data/bin/Image-ExifTool-10.31/t/Casio_2.out +0 -72
  1217. data/bin/Image-ExifTool-10.31/t/Casio_3.out +0 -102
  1218. data/bin/Image-ExifTool-10.31/t/Casio_5.out +0 -80
  1219. data/bin/Image-ExifTool-10.31/t/Casio_6.out +0 -117
  1220. data/bin/Image-ExifTool-10.31/t/DNG_2.out +0 -329
  1221. data/bin/Image-ExifTool-10.31/t/ExifTool_2.out +0 -427
  1222. data/bin/Image-ExifTool-10.31/t/ExifTool_29.out +0 -426
  1223. data/bin/Image-ExifTool-10.31/t/FLIF_2.out +0 -50
  1224. data/bin/Image-ExifTool-10.31/t/FLIF_4.out +0 -17
  1225. data/bin/Image-ExifTool-10.31/t/FLIR_2.out +0 -118
  1226. data/bin/Image-ExifTool-10.31/t/FujiFilm_2.out +0 -89
  1227. data/bin/Image-ExifTool-10.31/t/FujiFilm_3.out +0 -90
  1228. data/bin/Image-ExifTool-10.31/t/FujiFilm_4.out +0 -143
  1229. data/bin/Image-ExifTool-10.31/t/GE_2.out +0 -86
  1230. data/bin/Image-ExifTool-10.31/t/GE_3.out +0 -86
  1231. data/bin/Image-ExifTool-10.31/t/GPS_2.out +0 -96
  1232. data/bin/Image-ExifTool-10.31/t/GPS_3.out +0 -98
  1233. data/bin/Image-ExifTool-10.31/t/Kodak_2.out +0 -111
  1234. data/bin/Image-ExifTool-10.31/t/Kodak_3.out +0 -121
  1235. data/bin/Image-ExifTool-10.31/t/Lang.t +0 -40
  1236. data/bin/Image-ExifTool-10.31/t/Lang_10.out +0 -46
  1237. data/bin/Image-ExifTool-10.31/t/Lang_11.out +0 -46
  1238. data/bin/Image-ExifTool-10.31/t/Lang_12.out +0 -46
  1239. data/bin/Image-ExifTool-10.31/t/Lang_13.out +0 -46
  1240. data/bin/Image-ExifTool-10.31/t/Lang_14.out +0 -46
  1241. data/bin/Image-ExifTool-10.31/t/Lang_15.out +0 -46
  1242. data/bin/Image-ExifTool-10.31/t/Lang_16.out +0 -46
  1243. data/bin/Image-ExifTool-10.31/t/Lang_17.out +0 -46
  1244. data/bin/Image-ExifTool-10.31/t/Lang_18.out +0 -46
  1245. data/bin/Image-ExifTool-10.31/t/Lang_2.out +0 -46
  1246. data/bin/Image-ExifTool-10.31/t/Lang_3.out +0 -46
  1247. data/bin/Image-ExifTool-10.31/t/Lang_4.out +0 -46
  1248. data/bin/Image-ExifTool-10.31/t/Lang_5.out +0 -46
  1249. data/bin/Image-ExifTool-10.31/t/Lang_6.out +0 -46
  1250. data/bin/Image-ExifTool-10.31/t/Lang_7.out +0 -46
  1251. data/bin/Image-ExifTool-10.31/t/Lang_8.out +0 -46
  1252. data/bin/Image-ExifTool-10.31/t/Lang_9.out +0 -46
  1253. data/bin/Image-ExifTool-10.31/t/MIE_3.out +0 -136
  1254. data/bin/Image-ExifTool-10.31/t/MWG.t +0 -90
  1255. data/bin/Image-ExifTool-10.31/t/MWG_2.out +0 -13
  1256. data/bin/Image-ExifTool-10.31/t/Minolta_2.out +0 -135
  1257. data/bin/Image-ExifTool-10.31/t/Minolta_3.out +0 -148
  1258. data/bin/Image-ExifTool-10.31/t/Minolta_4.out +0 -150
  1259. data/bin/Image-ExifTool-10.31/t/Nikon_2.out +0 -84
  1260. data/bin/Image-ExifTool-10.31/t/Nikon_3.out +0 -100
  1261. data/bin/Image-ExifTool-10.31/t/Nikon_4.out +0 -176
  1262. data/bin/Image-ExifTool-10.31/t/Nikon_5.out +0 -169
  1263. data/bin/Image-ExifTool-10.31/t/Nikon_7.out +0 -261
  1264. data/bin/Image-ExifTool-10.31/t/Olympus_2.out +0 -81
  1265. data/bin/Image-ExifTool-10.31/t/Olympus_3.out +0 -83
  1266. data/bin/Image-ExifTool-10.31/t/Olympus_4.out +0 -194
  1267. data/bin/Image-ExifTool-10.31/t/Olympus_5.out +0 -266
  1268. data/bin/Image-ExifTool-10.31/t/Olympus_6.out +0 -153
  1269. data/bin/Image-ExifTool-10.31/t/Panasonic_2.out +0 -101
  1270. data/bin/Image-ExifTool-10.31/t/Panasonic_3.out +0 -121
  1271. data/bin/Image-ExifTool-10.31/t/Panasonic_4.out +0 -206
  1272. data/bin/Image-ExifTool-10.31/t/Panasonic_5.out +0 -244
  1273. data/bin/Image-ExifTool-10.31/t/Pentax_2.out +0 -225
  1274. data/bin/Image-ExifTool-10.31/t/Pentax_3.out +0 -266
  1275. data/bin/Image-ExifTool-10.31/t/Pentax_4.out +0 -131
  1276. data/bin/Image-ExifTool-10.31/t/PhaseOne_2.out +0 -99
  1277. data/bin/Image-ExifTool-10.31/t/PhaseOne_3.out +0 -170
  1278. data/bin/Image-ExifTool-10.31/t/RIFF_3.out +0 -54
  1279. data/bin/Image-ExifTool-10.31/t/Ricoh_2.out +0 -72
  1280. data/bin/Image-ExifTool-10.31/t/Ricoh_3.out +0 -100
  1281. data/bin/Image-ExifTool-10.31/t/Ricoh_4.out +0 -114
  1282. data/bin/Image-ExifTool-10.31/t/Sanyo_2.out +0 -103
  1283. data/bin/Image-ExifTool-10.31/t/Sanyo_3.out +0 -113
  1284. data/bin/Image-ExifTool-10.31/t/Sigma_2.out +0 -93
  1285. data/bin/Image-ExifTool-10.31/t/Sigma_3.out +0 -96
  1286. data/bin/Image-ExifTool-10.31/t/Sigma_5.out +0 -194
  1287. data/bin/Image-ExifTool-10.31/t/Sony_2.out +0 -86
  1288. data/bin/Image-ExifTool-10.31/t/Sony_3.out +0 -87
  1289. data/bin/Image-ExifTool-10.31/t/Sony_5.out +0 -34
  1290. data/bin/Image-ExifTool-10.31/t/Unknown_2.out +0 -92
  1291. data/bin/Image-ExifTool-10.31/t/Unknown_3.out +0 -92
  1292. data/bin/Image-ExifTool-10.31/t/Writer.t +0 -999
  1293. data/bin/Image-ExifTool-10.31/t/Writer_10.out +0 -246
  1294. data/bin/Image-ExifTool-10.31/t/Writer_46.out +0 -107
  1295. data/bin/Image-ExifTool-10.31/t/Writer_51.out +0 -414
  1296. data/bin/Image-ExifTool-10.31/t/Writer_9.out +0 -243
@@ -0,0 +1,2096 @@
1
+ #------------------------------------------------------------------------------
2
+ # File: Kodak.pm
3
+ #
4
+ # Description: Kodak EXIF maker notes and APP3 "Meta" tags
5
+ #
6
+ # Revisions: 03/28/2005 - P. Harvey Created
7
+ #
8
+ # References: 1) http://search.cpan.org/dist/Image-MetaData-JPEG/
9
+ # 2) http://www.ozhiker.com/electronics/pjmt/jpeg_info/meta.html
10
+ # 3) http://www.cybercom.net/~dcoffin/dcraw/
11
+ # IB) Iliah Borg private communication (LibRaw)
12
+ #
13
+ # Notes: There really isn't much public information about Kodak formats.
14
+ # The only source I could find was Image::MetaData::JPEG, which
15
+ # didn't provide information about decoding the tag values. So
16
+ # this module represents a lot of work downloading sample images
17
+ # (about 100MB worth!), and testing with my daughter's CX4200.
18
+ #------------------------------------------------------------------------------
19
+
20
+ package Image::ExifTool::Kodak;
21
+
22
+ use strict;
23
+ use vars qw($VERSION);
24
+ use Image::ExifTool qw(:DataAccess :Utils);
25
+ use Image::ExifTool::Exif;
26
+
27
+ $VERSION = '1.41';
28
+
29
+ sub ProcessKodakIFD($$$);
30
+ sub ProcessKodakText($$$);
31
+ sub WriteKodakIFD($$$);
32
+
33
+ # Kodak type 1 maker notes (ref 1)
34
+ %Image::ExifTool::Kodak::Main = (
35
+ GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' },
36
+ PROCESS_PROC => \&Image::ExifTool::ProcessBinaryData,
37
+ WRITE_PROC => \&Image::ExifTool::WriteBinaryData,
38
+ CHECK_PROC => \&Image::ExifTool::CheckBinaryData,
39
+ NOTES => q{
40
+ The table below contains the most common set of Kodak tags. The following
41
+ Kodak camera models have been tested and found to use these tags: C360,
42
+ C663, C875, CX6330, CX6445, CX7330, CX7430, CX7525, CX7530, DC4800, DC4900,
43
+ DX3500, DX3600, DX3900, DX4330, DX4530, DX4900, DX6340, DX6440, DX6490,
44
+ DX7440, DX7590, DX7630, EasyShare-One, LS420, LS443, LS633, LS743, LS753,
45
+ V530, V550, V570, V603, V610, V705, Z650, Z700, Z710, Z730, Z740, Z760 and
46
+ Z7590.
47
+ },
48
+ WRITABLE => 1,
49
+ FIRST_ENTRY => 8,
50
+ 0x00 => {
51
+ Name => 'KodakModel',
52
+ Format => 'string[8]',
53
+ },
54
+ 0x09 => {
55
+ Name => 'Quality',
56
+ PrintConv => { #PH
57
+ 1 => 'Fine',
58
+ 2 => 'Normal',
59
+ },
60
+ },
61
+ 0x0a => {
62
+ Name => 'BurstMode',
63
+ PrintConv => { 0 => 'Off', 1 => 'On' },
64
+ },
65
+ 0x0c => {
66
+ Name => 'KodakImageWidth',
67
+ Format => 'int16u',
68
+ },
69
+ 0x0e => {
70
+ Name => 'KodakImageHeight',
71
+ Format => 'int16u',
72
+ },
73
+ 0x10 => {
74
+ Name => 'YearCreated',
75
+ Groups => { 2 => 'Time' },
76
+ Format => 'int16u',
77
+ },
78
+ 0x12 => {
79
+ Name => 'MonthDayCreated',
80
+ Groups => { 2 => 'Time' },
81
+ Format => 'int8u[2]',
82
+ ValueConv => 'sprintf("%.2d:%.2d",split(" ", $val))',
83
+ ValueConvInv => '$val=~tr/:./ /;$val',
84
+ },
85
+ 0x14 => {
86
+ Name => 'TimeCreated',
87
+ Groups => { 2 => 'Time' },
88
+ Format => 'int8u[4]',
89
+ Shift => 'Time',
90
+ ValueConv => 'sprintf("%.2d:%.2d:%.2d.%.2d",split(" ", $val))',
91
+ ValueConvInv => '$val=~tr/:./ /;$val',
92
+ },
93
+ 0x18 => {
94
+ Name => 'BurstMode2',
95
+ Format => 'int16u',
96
+ Unknown => 1, # not sure about this tag (or other 'Unknown' tags)
97
+ },
98
+ 0x1b => {
99
+ Name => 'ShutterMode',
100
+ PrintConv => { #PH
101
+ 0 => 'Auto',
102
+ 8 => 'Aperture Priority',
103
+ 32 => 'Manual?',
104
+ },
105
+ },
106
+ 0x1c => {
107
+ Name => 'MeteringMode',
108
+ PrintConv => { #PH
109
+ 0 => 'Multi-segment',
110
+ 1 => 'Center-weighted average',
111
+ 2 => 'Spot',
112
+ },
113
+ },
114
+ 0x1d => 'SequenceNumber',
115
+ 0x1e => {
116
+ Name => 'FNumber',
117
+ Format => 'int16u',
118
+ ValueConv => '$val / 100',
119
+ ValueConvInv => 'int($val * 100 + 0.5)',
120
+ },
121
+ 0x20 => {
122
+ Name => 'ExposureTime',
123
+ Format => 'int32u',
124
+ ValueConv => '$val / 1e5',
125
+ ValueConvInv => '$val * 1e5',
126
+ PrintConv => 'Image::ExifTool::Exif::PrintExposureTime($val)',
127
+ PrintConvInv => 'Image::ExifTool::Exif::ConvertFraction($val)',
128
+ },
129
+ 0x24 => {
130
+ Name => 'ExposureCompensation',
131
+ Format => 'int16s',
132
+ ValueConv => '$val / 1000',
133
+ ValueConvInv => '$val * 1000',
134
+ PrintConv => '$val > 0 ? "+$val" : $val',
135
+ PrintConvInv => 'Image::ExifTool::Exif::ConvertFraction($val)',
136
+ },
137
+ 0x26 => {
138
+ Name => 'VariousModes',
139
+ Format => 'int16u',
140
+ Unknown => 1,
141
+ },
142
+ 0x28 => {
143
+ Name => 'Distance1',
144
+ Format => 'int32u',
145
+ Unknown => 1,
146
+ },
147
+ 0x2c => {
148
+ Name => 'Distance2',
149
+ Format => 'int32u',
150
+ Unknown => 1,
151
+ },
152
+ 0x30 => {
153
+ Name => 'Distance3',
154
+ Format => 'int32u',
155
+ Unknown => 1,
156
+ },
157
+ 0x34 => {
158
+ Name => 'Distance4',
159
+ Format => 'int32u',
160
+ Unknown => 1,
161
+ },
162
+ 0x38 => {
163
+ Name => 'FocusMode',
164
+ PrintConv => {
165
+ 0 => 'Normal',
166
+ 2 => 'Macro',
167
+ },
168
+ },
169
+ 0x3a => {
170
+ Name => 'VariousModes2',
171
+ Format => 'int16u',
172
+ Unknown => 1,
173
+ },
174
+ 0x3c => {
175
+ Name => 'PanoramaMode',
176
+ Format => 'int16u',
177
+ Unknown => 1,
178
+ },
179
+ 0x3e => {
180
+ Name => 'SubjectDistance',
181
+ Format => 'int16u',
182
+ Unknown => 1,
183
+ },
184
+ 0x40 => {
185
+ Name => 'WhiteBalance',
186
+ Priority => 0,
187
+ PrintConv => { #PH
188
+ 0 => 'Auto',
189
+ 1 => 'Flash?',
190
+ 2 => 'Tungsten',
191
+ 3 => 'Daylight',
192
+ },
193
+ },
194
+ 0x5c => {
195
+ Name => 'FlashMode',
196
+ Flags => 'PrintHex',
197
+ # various models express this number differently
198
+ PrintConv => { #PH
199
+ 0x00 => 'Auto',
200
+ 0x01 => 'Fill Flash',
201
+ 0x02 => 'Off',
202
+ 0x03 => 'Red-Eye',
203
+ 0x10 => 'Fill Flash',
204
+ 0x20 => 'Off',
205
+ 0x40 => 'Red-Eye?',
206
+ },
207
+ },
208
+ 0x5d => {
209
+ Name => 'FlashFired',
210
+ PrintConv => { 0 => 'No', 1 => 'Yes' },
211
+ },
212
+ 0x5e => {
213
+ Name => 'ISOSetting',
214
+ Format => 'int16u',
215
+ PrintConv => '$val ? $val : "Auto"',
216
+ PrintConvInv => '$val=~/^\d+$/ ? $val : 0',
217
+ },
218
+ 0x60 => {
219
+ Name => 'ISO',
220
+ Format => 'int16u',
221
+ },
222
+ 0x62 => {
223
+ Name => 'TotalZoom',
224
+ Format => 'int16u',
225
+ ValueConv => '$val / 100',
226
+ ValueConvInv => '$val * 100',
227
+ },
228
+ 0x64 => {
229
+ Name => 'DateTimeStamp',
230
+ Format => 'int16u',
231
+ PrintConv => '$val ? "Mode $val" : "Off"',
232
+ PrintConvInv => '$val=~tr/0-9//dc; $val ? $val : 0',
233
+ },
234
+ 0x66 => {
235
+ Name => 'ColorMode',
236
+ Format => 'int16u',
237
+ Flags => 'PrintHex',
238
+ # various models express this number differently
239
+ PrintConv => { #PH
240
+ 0x01 => 'B&W',
241
+ 0x02 => 'Sepia',
242
+ 0x03 => 'B&W Yellow Filter',
243
+ 0x04 => 'B&W Red Filter',
244
+ 0x20 => 'Saturated Color',
245
+ 0x40 => 'Neutral Color',
246
+ 0x100 => 'Saturated Color',
247
+ 0x200 => 'Neutral Color',
248
+ 0x2000 => 'B&W',
249
+ 0x4000 => 'Sepia',
250
+ },
251
+ },
252
+ 0x68 => {
253
+ Name => 'DigitalZoom',
254
+ Format => 'int16u',
255
+ ValueConv => '$val / 100',
256
+ ValueConvInv => '$val * 100',
257
+ },
258
+ 0x6b => {
259
+ Name => 'Sharpness',
260
+ Format => 'int8s',
261
+ %Image::ExifTool::Exif::printParameter,
262
+ },
263
+ );
264
+
265
+ # Kodak type 2 maker notes (ref PH)
266
+ %Image::ExifTool::Kodak::Type2 = (
267
+ GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' },
268
+ PROCESS_PROC => \&Image::ExifTool::ProcessBinaryData,
269
+ WRITE_PROC => \&Image::ExifTool::WriteBinaryData,
270
+ CHECK_PROC => \&Image::ExifTool::CheckBinaryData,
271
+ NOTES => q{
272
+ These tags are used by the Kodak DC220, DC260, DC265 and DC290,
273
+ Hewlett-Packard PhotoSmart 618, C500 and C912, Pentax EI-200 and EI-2000,
274
+ and Minolta EX1500Z.
275
+ },
276
+ WRITABLE => 1,
277
+ FIRST_ENTRY => 0,
278
+ 0x08 => {
279
+ Name => 'KodakMaker',
280
+ Format => 'string[32]',
281
+ },
282
+ 0x28 => {
283
+ Name => 'KodakModel',
284
+ Format => 'string[32]',
285
+ },
286
+ 0x6c => {
287
+ Name => 'KodakImageWidth',
288
+ Format => 'int32u',
289
+ },
290
+ 0x70 => {
291
+ Name => 'KodakImageHeight',
292
+ Format => 'int32u',
293
+ },
294
+ );
295
+
296
+ # Kodak type 3 maker notes (ref PH)
297
+ %Image::ExifTool::Kodak::Type3 = (
298
+ GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' },
299
+ PROCESS_PROC => \&Image::ExifTool::ProcessBinaryData,
300
+ WRITE_PROC => \&Image::ExifTool::WriteBinaryData,
301
+ CHECK_PROC => \&Image::ExifTool::CheckBinaryData,
302
+ NOTES => 'These tags are used by the DC240, DC280, DC3400 and DC5000.',
303
+ WRITABLE => 1,
304
+ FIRST_ENTRY => 0,
305
+ 0x0c => {
306
+ Name => 'YearCreated',
307
+ Groups => { 2 => 'Time' },
308
+ Format => 'int16u',
309
+ },
310
+ 0x0e => {
311
+ Name => 'MonthDayCreated',
312
+ Groups => { 2 => 'Time' },
313
+ Format => 'int8u[2]',
314
+ ValueConv => 'sprintf("%.2d:%.2d",split(" ", $val))',
315
+ ValueConvInv => '$val=~tr/:./ /;$val',
316
+ },
317
+ 0x10 => {
318
+ Name => 'TimeCreated',
319
+ Groups => { 2 => 'Time' },
320
+ Format => 'int8u[4]',
321
+ Shift => 'Time',
322
+ ValueConv => 'sprintf("%2d:%.2d:%.2d.%.2d",split(" ", $val))',
323
+ ValueConvInv => '$val=~tr/:./ /;$val',
324
+ },
325
+ 0x1e => {
326
+ Name => 'OpticalZoom',
327
+ Format => 'int16u',
328
+ ValueConv => '$val / 100',
329
+ ValueConvInv => '$val * 100',
330
+ },
331
+ 0x37 => {
332
+ Name => 'Sharpness',
333
+ Format => 'int8s',
334
+ %Image::ExifTool::Exif::printParameter,
335
+ },
336
+ 0x38 => {
337
+ Name => 'ExposureTime',
338
+ Format => 'int32u',
339
+ ValueConv => '$val / 1e5',
340
+ ValueConvInv => '$val * 1e5',
341
+ PrintConv => 'Image::ExifTool::Exif::PrintExposureTime($val)',
342
+ PrintConvInv => 'Image::ExifTool::Exif::ConvertFraction($val)',
343
+ },
344
+ 0x3c => {
345
+ Name => 'FNumber',
346
+ Format => 'int16u',
347
+ ValueConv => '$val / 100',
348
+ ValueConvInv => 'int($val * 100 + 0.5)',
349
+ },
350
+ 0x4e => {
351
+ Name => 'ISO',
352
+ Format => 'int16u',
353
+ },
354
+ );
355
+
356
+ # Kodak type 4 maker notes (ref PH)
357
+ %Image::ExifTool::Kodak::Type4 = (
358
+ GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' },
359
+ PROCESS_PROC => \&Image::ExifTool::ProcessBinaryData,
360
+ WRITE_PROC => \&Image::ExifTool::WriteBinaryData,
361
+ CHECK_PROC => \&Image::ExifTool::CheckBinaryData,
362
+ NOTES => 'These tags are used by the DC200 and DC215.',
363
+ WRITABLE => 1,
364
+ FIRST_ENTRY => 0,
365
+ 0x20 => {
366
+ Name => 'OriginalFileName',
367
+ Format => 'string[12]',
368
+ },
369
+ );
370
+
371
+ # Kodak type 5 maker notes (ref PH)
372
+ %Image::ExifTool::Kodak::Type5 = (
373
+ GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' },
374
+ PROCESS_PROC => \&Image::ExifTool::ProcessBinaryData,
375
+ NOTES => q{
376
+ These tags are used by the CX4200, CX4210, CX4230, CX4300, CX4310, CX6200
377
+ and CX6230.
378
+ },
379
+ WRITABLE => 1,
380
+ FIRST_ENTRY => 0,
381
+ 0x14 => {
382
+ Name => 'ExposureTime',
383
+ Format => 'int32u',
384
+ ValueConv => '$val / 1e5',
385
+ ValueConvInv => '$val * 1e5',
386
+ PrintConv => 'Image::ExifTool::Exif::PrintExposureTime($val)',
387
+ PrintConvInv => 'Image::ExifTool::Exif::ConvertFraction($val)',
388
+ },
389
+ 0x1a => {
390
+ Name => 'WhiteBalance',
391
+ PrintConv => {
392
+ 1 => 'Daylight',
393
+ 2 => 'Flash',
394
+ 3 => 'Tungsten',
395
+ },
396
+ },
397
+ 0x1c => {
398
+ Name => 'FNumber',
399
+ Format => 'int16u',
400
+ ValueConv => '$val / 100',
401
+ ValueConvInv => 'int($val * 100 + 0.5)',
402
+ },
403
+ 0x1e => {
404
+ Name => 'ISO',
405
+ Format => 'int16u',
406
+ },
407
+ 0x20 => {
408
+ Name => 'OpticalZoom',
409
+ Format => 'int16u',
410
+ ValueConv => '$val / 100',
411
+ ValueConvInv => '$val * 100',
412
+ },
413
+ 0x22 => {
414
+ Name => 'DigitalZoom',
415
+ Format => 'int16u',
416
+ ValueConv => '$val / 100',
417
+ ValueConvInv => '$val * 100',
418
+ },
419
+ 0x27 => {
420
+ Name => 'FlashMode',
421
+ PrintConv => {
422
+ 0 => 'Auto',
423
+ 1 => 'On',
424
+ 2 => 'Off',
425
+ 3 => 'Red-Eye',
426
+ },
427
+ },
428
+ 0x2a => {
429
+ Name => 'ImageRotated',
430
+ PrintConv => { 0 => 'No', 1 => 'Yes' },
431
+ },
432
+ 0x2b => {
433
+ Name => 'Macro',
434
+ PrintConv => { 0 => 'On', 1 => 'Off' },
435
+ },
436
+ );
437
+
438
+ # Kodak type 6 maker notes (ref PH)
439
+ %Image::ExifTool::Kodak::Type6 = (
440
+ GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' },
441
+ PROCESS_PROC => \&Image::ExifTool::ProcessBinaryData,
442
+ NOTES => 'These tags are used by the DX3215 and DX3700.',
443
+ WRITABLE => 1,
444
+ FIRST_ENTRY => 0,
445
+ 0x10 => {
446
+ Name => 'ExposureTime',
447
+ Format => 'int32u',
448
+ ValueConv => '$val / 1e5',
449
+ ValueConvInv => '$val * 1e5',
450
+ PrintConv => 'Image::ExifTool::Exif::PrintExposureTime($val)',
451
+ PrintConvInv => 'Image::ExifTool::Exif::ConvertFraction($val)',
452
+ },
453
+ 0x14 => {
454
+ Name => 'ISOSetting',
455
+ Format => 'int32u',
456
+ Unknown => 1,
457
+ },
458
+ 0x18 => {
459
+ Name => 'FNumber',
460
+ Format => 'int16u',
461
+ ValueConv => '$val / 100',
462
+ ValueConvInv => 'int($val * 100 + 0.5)',
463
+ },
464
+ 0x1a => {
465
+ Name => 'ISO',
466
+ Format => 'int16u',
467
+ },
468
+ 0x1c => {
469
+ Name => 'OpticalZoom',
470
+ Format => 'int16u',
471
+ ValueConv => '$val / 100',
472
+ ValueConvInv => '$val * 100',
473
+ },
474
+ 0x1e => {
475
+ Name => 'DigitalZoom',
476
+ Format => 'int16u',
477
+ ValueConv => '$val / 100',
478
+ ValueConvInv => '$val * 100',
479
+ },
480
+ 0x22 => {
481
+ Name => 'Flash',
482
+ Format => 'int16u',
483
+ PrintConv => {
484
+ 0 => 'No Flash',
485
+ 1 => 'Fired',
486
+ },
487
+ },
488
+ );
489
+
490
+ # Kodak type 7 maker notes (ref PH)
491
+ %Image::ExifTool::Kodak::Type7 = (
492
+ GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' },
493
+ PROCESS_PROC => \&Image::ExifTool::ProcessBinaryData,
494
+ WRITE_PROC => \&Image::ExifTool::WriteBinaryData,
495
+ CHECK_PROC => \&Image::ExifTool::CheckBinaryData,
496
+ WRITABLE => 1,
497
+ FIRST_ENTRY => 0,
498
+ NOTES => q{
499
+ The maker notes of models such as the C340, C433, CC533, LS755, V803 and
500
+ V1003 seem to start with the camera serial number. The C310, C315, C330,
501
+ C643, C743, CD33, CD43, CX7220 and CX7300 maker notes are also decoded using
502
+ this table, although the strings for these cameras don't conform to the
503
+ usual Kodak serial number format, and instead have the model name followed
504
+ by 8 digits.
505
+ },
506
+ 0 => { # (not confirmed)
507
+ Name => 'SerialNumber',
508
+ Format => 'string[16]',
509
+ ValueConv => '$val=~s/\s+$//; $val', # remove trailing whitespace
510
+ ValueConvInv => '$val',
511
+ },
512
+ );
513
+
514
+ # Kodak IFD-format maker notes (ref PH)
515
+ %Image::ExifTool::Kodak::Type8 = (
516
+ WRITE_PROC => \&Image::ExifTool::Exif::WriteExif,
517
+ CHECK_PROC => \&Image::ExifTool::Exif::CheckExif,
518
+ GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' },
519
+ NOTES => q{
520
+ Kodak models such as the ZD710, P712, P850, P880, V1233, V1253, V1275,
521
+ V1285, Z612, Z712, Z812, Z885 use standard TIFF IFD format for the maker
522
+ notes. In keeping with Kodak's strategy of inconsistent makernotes, models
523
+ such as the M380, M1033, M1093, V1073, V1273, Z1012, Z1085 and Z8612
524
+ also use these tags, but these makernotes begin with a TIFF header instead
525
+ of an IFD entry count and use relative instead of absolute offsets. There
526
+ is a large amount of information stored in these maker notes (apparently
527
+ with much duplication), but relatively few tags have so far been decoded.
528
+ },
529
+ 0xfc00 => [{
530
+ Name => 'SubIFD0',
531
+ Condition => '$format eq "undef"',
532
+ Groups => { 1 => 'MakerNotes' }, # SubIFD needs group 1 set
533
+ NestedHtmlDump => 2, # (so HtmlDump doesn't show these as double-referenced)
534
+ SubDirectory => {
535
+ TagTable => 'Image::ExifTool::Kodak::SubIFD0',
536
+ Base => '$start',
537
+ ProcessProc => \&ProcessKodakIFD,
538
+ WriteProc => \&WriteKodakIFD,
539
+ },
540
+ },{
541
+ Name => 'SubIFD0',
542
+ Groups => { 1 => 'MakerNotes' }, # SubIFD needs group 1 set
543
+ Flags => 'SubIFD',
544
+ SubDirectory => {
545
+ TagTable => 'Image::ExifTool::Kodak::SubIFD0',
546
+ Start => '$val',
547
+ # (odd but true: the Base for this SubIFD is different than 0xfc01-0xfc06)
548
+ },
549
+ }],
550
+ # SubIFD1 and higher data is preceded by a TIFF byte order mark to indicate
551
+ # the byte ordering used. Beginning with the M580, these subdirectories are
552
+ # stored as 'undef' data rather than as a standard EXIF SubIFD.
553
+ 0xfc01 => [{
554
+ Name => 'SubIFD1',
555
+ Condition => '$format eq "undef"',
556
+ Groups => { 1 => 'MakerNotes' }, # SubIFD needs group 1 set
557
+ NestedHtmlDump => 2,
558
+ SubDirectory => {
559
+ TagTable => 'Image::ExifTool::Kodak::SubIFD1',
560
+ Base => '$start',
561
+ },
562
+ },{
563
+ Name => 'SubIFD1',
564
+ Condition => '$$valPt ne "\0\0\0\0"', # may be zero if dir doesn't exist
565
+ Groups => { 1 => 'MakerNotes' }, # SubIFD needs group 1 set
566
+ Flags => 'SubIFD',
567
+ SubDirectory => {
568
+ TagTable => 'Image::ExifTool::Kodak::SubIFD1',
569
+ Start => '$val',
570
+ Base => '$start',
571
+ },
572
+ }],
573
+ 0xfc02 => [{
574
+ Name => 'SubIFD2',
575
+ Condition => '$format eq "undef"',
576
+ Groups => { 1 => 'MakerNotes' }, # SubIFD needs group 1 set
577
+ NestedHtmlDump => 2,
578
+ SubDirectory => {
579
+ TagTable => 'Image::ExifTool::Kodak::SubIFD2',
580
+ Base => '$start',
581
+ },
582
+ },{
583
+ Name => 'SubIFD2',
584
+ Condition => '$$valPt ne "\0\0\0\0"', # may be zero if dir doesn't exist
585
+ Groups => { 1 => 'MakerNotes' }, # SubIFD needs group 1 set
586
+ Flags => 'SubIFD',
587
+ SubDirectory => {
588
+ TagTable => 'Image::ExifTool::Kodak::SubIFD2',
589
+ Start => '$val',
590
+ Base => '$start',
591
+ },
592
+ }],
593
+ 0xfc03 => [{
594
+ Name => 'SubIFD3',
595
+ Condition => '$format eq "undef"',
596
+ Groups => { 1 => 'MakerNotes' }, # SubIFD needs group 1 set
597
+ NestedHtmlDump => 2,
598
+ SubDirectory => {
599
+ TagTable => 'Image::ExifTool::Kodak::SubIFD3',
600
+ Base => '$start',
601
+ },
602
+ },{
603
+ Name => 'SubIFD3',
604
+ Condition => '$$valPt ne "\0\0\0\0"', # may be zero if dir doesn't exist
605
+ Groups => { 1 => 'MakerNotes' }, # SubIFD needs group 1 set
606
+ Flags => 'SubIFD',
607
+ SubDirectory => {
608
+ TagTable => 'Image::ExifTool::Kodak::SubIFD3',
609
+ Start => '$val',
610
+ Base => '$start',
611
+ },
612
+ }],
613
+ # (SubIFD4 has the pointer zeroed in my samples, but support it
614
+ # in case it is used by future models -- ignored if pointer is zero)
615
+ 0xfc04 => [{
616
+ Name => 'SubIFD4',
617
+ Condition => '$format eq "undef"',
618
+ Groups => { 1 => 'MakerNotes' }, # SubIFD needs group 1 set
619
+ NestedHtmlDump => 2,
620
+ SubDirectory => {
621
+ TagTable => 'Image::ExifTool::Kodak::SubIFD4',
622
+ Base => '$start',
623
+ },
624
+ },{
625
+ Name => 'SubIFD4',
626
+ Condition => '$$valPt ne "\0\0\0\0"', # may be zero if dir doesn't exist
627
+ Groups => { 1 => 'MakerNotes' }, # SubIFD needs group 1 set
628
+ Flags => 'SubIFD',
629
+ SubDirectory => {
630
+ TagTable => 'Image::ExifTool::Kodak::SubIFD4',
631
+ Start => '$val',
632
+ Base => '$start',
633
+ },
634
+ }],
635
+ 0xfc05 => [{
636
+ Name => 'SubIFD5',
637
+ Condition => '$format eq "undef"',
638
+ Groups => { 1 => 'MakerNotes' }, # SubIFD needs group 1 set
639
+ NestedHtmlDump => 2,
640
+ SubDirectory => {
641
+ TagTable => 'Image::ExifTool::Kodak::SubIFD5',
642
+ Base => '$start',
643
+ },
644
+ },{
645
+ Name => 'SubIFD5',
646
+ Condition => '$$valPt ne "\0\0\0\0"', # may be zero if dir doesn't exist
647
+ Groups => { 1 => 'MakerNotes' }, # SubIFD needs group 1 set
648
+ Flags => 'SubIFD',
649
+ SubDirectory => {
650
+ TagTable => 'Image::ExifTool::Kodak::SubIFD5',
651
+ Start => '$val',
652
+ Base => '$start',
653
+ },
654
+ }],
655
+ 0xfc06 => [{ # new for the M580
656
+ Name => 'SubIFD6',
657
+ Condition => '$format eq "undef"',
658
+ Groups => { 1 => 'MakerNotes' }, # SubIFD needs group 1 set
659
+ NestedHtmlDump => 2,
660
+ SubDirectory => {
661
+ TagTable => 'Image::ExifTool::Kodak::SubIFD6',
662
+ Base => '$start',
663
+ },
664
+ },{
665
+ Name => 'SubIFD6',
666
+ Condition => '$$valPt ne "\0\0\0\0"', # may be zero if dir doesn't exist
667
+ Groups => { 1 => 'MakerNotes' }, # SubIFD needs group 1 set
668
+ Flags => 'SubIFD',
669
+ SubDirectory => {
670
+ TagTable => 'Image::ExifTool::Kodak::SubIFD6',
671
+ Start => '$val',
672
+ Base => '$start',
673
+ },
674
+ }],
675
+ 0xfcff => {
676
+ Name => 'SubIFD255',
677
+ Condition => '$format eq "undef"',
678
+ Groups => { 1 => 'MakerNotes' }, # SubIFD needs group 1 set
679
+ NestedHtmlDump => 2,
680
+ SubDirectory => {
681
+ TagTable => 'Image::ExifTool::Kodak::SubIFD0',
682
+ # (uses the same Base as the main MakerNote IFD)
683
+ },
684
+ },
685
+ 0xff00 => {
686
+ Name => 'CameraInfo',
687
+ Condition => '$$valPt ne "\0\0\0\0"', # may be zero if dir doesn't exist
688
+ Groups => { 1 => 'MakerNotes' }, # SubIFD needs group 1 set
689
+ Flags => 'SubIFD',
690
+ SubDirectory => {
691
+ TagTable => 'Image::ExifTool::Kodak::CameraInfo',
692
+ Start => '$val',
693
+ # (uses the same Base as the main MakerNote IFD)
694
+ },
695
+ },
696
+ );
697
+
698
+ # Kodak type 9 maker notes (ref PH)
699
+ %Image::ExifTool::Kodak::Type9 = (
700
+ GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' },
701
+ PROCESS_PROC => \&Image::ExifTool::ProcessBinaryData,
702
+ WRITE_PROC => \&Image::ExifTool::WriteBinaryData,
703
+ CHECK_PROC => \&Image::ExifTool::CheckBinaryData,
704
+ WRITABLE => 1,
705
+ FIRST_ENTRY => 0,
706
+ NOTES => q{
707
+ These tags are used by the Kodak C140, C180, C913, C1013, M320, M340 and
708
+ M550, as well as various cameras marketed by other manufacturers.
709
+ },
710
+ 0x0c => [
711
+ {
712
+ Name => 'FNumber',
713
+ Condition => '$$self{Make} =~ /Kodak/i',
714
+ Format => 'int16u',
715
+ ValueConv => '$val / 100',
716
+ ValueConvInv => 'int($val * 100 + 0.5)',
717
+ },{
718
+ Name => 'FNumber',
719
+ Format => 'int16u',
720
+ ValueConv => '$val / 10',
721
+ ValueConvInv => 'int($val * 10 + 0.5)',
722
+ },
723
+ ],
724
+ 0x10 => {
725
+ Name => 'ExposureTime',
726
+ Format => 'int32u',
727
+ ValueConv => '$val / 1e6',
728
+ ValueConvInv => '$val * 1e6',
729
+ PrintConv => 'Image::ExifTool::Exif::PrintExposureTime($val)',
730
+ PrintConvInv => 'Image::ExifTool::Exif::ConvertFraction($val)',
731
+ },
732
+ 0x14 => {
733
+ Name => 'DateTimeOriginal',
734
+ Description => 'Date/Time Original',
735
+ Groups => { 2 => 'Time' },
736
+ Format => 'string[20]',
737
+ Shift => 'Time',
738
+ ValueConv => '$val=~s{/}{:}g; $val',
739
+ ValueConvInv => '$val=~s{^(\d{4}):(\d{2}):}{$1/$2/}; $val',
740
+ PrintConv => '$self->ConvertDateTime($val)',
741
+ PrintConvInv => '$self->InverseDateTime($val,0)',
742
+ },
743
+ 0x34 => {
744
+ Name => 'ISO',
745
+ Format => 'int16u',
746
+ },
747
+ 0x57 => {
748
+ Name => 'FirmwareVersion',
749
+ Condition => '$$self{Make} =~ /Kodak/i',
750
+ Format => 'string[16]',
751
+ Notes => 'Kodak only',
752
+ },
753
+ 0xa8 => {
754
+ Name => 'UnknownNumber', # (was SerialNumber, but not unique for all cameras. eg. C1013)
755
+ Condition => '$$self{Make} =~ /Kodak/i and $$valPt =~ /^([A-Z0-9]{1,11}\0|[A-Z0-9]{12})/i',
756
+ Format => 'string[12]',
757
+ Notes => 'Kodak only',
758
+ Writable => 0,
759
+ },
760
+ 0xc4 => {
761
+ Name => 'UnknownNumber', # (confirmed NOT to be serial number for Easyshare Mini - PH)
762
+ Condition => '$$self{Make} =~ /Kodak/i and $$valPt =~ /^([A-Z0-9]{1,11}\0|[A-Z0-9]{12})/i',
763
+ Format => 'string[12]',
764
+ Notes => 'Kodak only',
765
+ Writable => 0,
766
+ },
767
+ );
768
+
769
+ # more Kodak IFD-format maker notes (ref PH)
770
+ %Image::ExifTool::Kodak::Type10 = (
771
+ WRITE_PROC => \&Image::ExifTool::Exif::WriteExif,
772
+ CHECK_PROC => \&Image::ExifTool::Exif::CheckExif,
773
+ GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' },
774
+ PRIORITY => 0,
775
+ NOTES => q{
776
+ Another variation of the IFD-format type, this time with just a byte order
777
+ indicator instead of a full TIFF header. These tags are used by the Z980.
778
+ },
779
+ # 0x01 int16u - always 0
780
+ 0x02 => {
781
+ Name => 'PreviewImageSize',
782
+ Writable => 'int16u',
783
+ Count => 2,
784
+ },
785
+ # 0x03 int32u - ranges from about 33940 to 40680
786
+ # 0x04 int32u - always 18493
787
+ # 0x06 undef[4] - 07 d9 04 11
788
+ # 0x07 undef[3] - varies
789
+ # 0x08 int16u - 1 (mostly), 2
790
+ # 0x09 int16u - 255
791
+ # 0x0b int16u[2] - '0 0' (mostly), '20 0', '21 0', '1 0'
792
+ # 0x0c int16u - 1 (mostly), 3, 259, 260
793
+ # 0x0d int16u - 0
794
+ # 0x0e int16u - 0, 1, 2 (MeteringMode? 0=Partial, 1,2=Multi)
795
+ # 0x0f int16u - 0, 5 (MeteringMode? 0=Multi, 5=Partial)
796
+ # 0x10 int16u - ranges from about 902 to 2308
797
+ 0x12 => {
798
+ Name => 'ExposureTime',
799
+ Writable => 'int32u',
800
+ ValueConv => '$val / 1e5',
801
+ ValueConvInv => '$val * 1e5',
802
+ PrintConv => 'Image::ExifTool::Exif::PrintExposureTime($val)',
803
+ PrintConvInv => 'Image::ExifTool::Exif::ConvertFraction($val)',
804
+ },
805
+ 0x13 => {
806
+ Name => 'FNumber',
807
+ Writable => 'int16u',
808
+ ValueConv => '$val / 10',
809
+ ValueConvInv => '$val * 10',
810
+ },
811
+ 0x14 => {
812
+ Name => 'ISO',
813
+ Writable => 'int16u',
814
+ ValueConv => 'exp($val/3*log(2))*25',
815
+ ValueConvInv => '3*log($val/25)/log(2)',
816
+ PrintConv => 'int($val + 0.5)',
817
+ PrintConvInv => '$val',
818
+ },
819
+ # 0x15 int16u - 18-25 (SceneMode? 21=auto, 24=Aperture Priority, 19=high speed)
820
+ # 0x16 int16u - 50
821
+ # 0x17 int16u - 0, 65535 (MeteringMode? 0=Multi, 65535=Partial)
822
+ # 0x19 int16u - 0, 4 (WhiteBalance? 0=Auto, 4=Manual)
823
+ # 0x1a int16u - 0, 65535
824
+ # 0x1b int16u - 416-696
825
+ # 0x1c int16u - 251-439 (low when 0x1b is high)
826
+ 0x1d => {
827
+ Name => 'FocalLength',
828
+ Writable => 'int32u',
829
+ ValueConv => '$val / 100',
830
+ ValueConvInv => '$val * 100',
831
+ PrintConv => '"$val mm"',
832
+ PrintConvInv => '$val=~s/\s*mm//;$val',
833
+ },
834
+ # 0x1e int16u - 100
835
+ # 0x1f int16u - 0, 1
836
+ # 0x20,0x21 int16u - 1
837
+ # 0x27 undef[4] - fe ff ff ff
838
+ # 0x32 undef[4] - 00 00 00 00
839
+ # 0x61 int32u[2] - '0 0' or '34050 0'
840
+ # 0x62 int8u - 0, 1
841
+ # 0x63 int8u - 1
842
+ # 0x64,0x65 int8u - 0, 1, 2
843
+ # 0x66 int32u - 0
844
+ # 0x67 int32u - 3
845
+ # 0x68 int32u - 0
846
+ # 0x3fe undef[2540]
847
+ );
848
+
849
+ # Kodak PixPro S-1 maker notes (ref PH)
850
+ # (similar to Ricoh::Type2 and GE::Main)
851
+ %Image::ExifTool::Kodak::Type11 = (
852
+ # (can't currently write these)
853
+ GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' },
854
+ NOTES =>q{
855
+ These tags are found in models such as the PixPro S-1. They are not
856
+ writable because the inconsistency of Kodak maker notes is beginning to get
857
+ on my nerves.
858
+ },
859
+ 0x0203 => {
860
+ Name => 'PictureEffect',
861
+ PrintConv => {
862
+ 0 => 'None',
863
+ 3 => 'Monochrome',
864
+ 9 => 'Kodachrome',
865
+ },
866
+ },
867
+ # 0x0204 - ExposureComp or FlashExposureComp maybe?
868
+ 0x0207 => 'KodakModel',
869
+ 0x0300 => 'KodakMake',
870
+ 0x0308 => 'LensSerialNumber',
871
+ 0x0309 => 'LensModel',
872
+ );
873
+
874
+ # Kodak SubIFD0 tags (ref PH)
875
+ %Image::ExifTool::Kodak::SubIFD0 = (
876
+ WRITE_PROC => \&Image::ExifTool::Exif::WriteExif,
877
+ CHECK_PROC => \&Image::ExifTool::Exif::CheckExif,
878
+ GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' },
879
+ NOTES => 'SubIFD0 through SubIFD5 tags are written a number of newer Kodak models.',
880
+ 0xfa02 => {
881
+ Name => 'SceneMode',
882
+ Writable => 'int16u',
883
+ Notes => 'may not be valid for some models', # eg. M580?
884
+ PrintConvColumns => 2,
885
+ PrintConv => {
886
+ 1 => 'Sport',
887
+ 3 => 'Portrait',
888
+ 4 => 'Landscape',
889
+ 6 => 'Beach',
890
+ 7 => 'Night Portrait',
891
+ 8 => 'Night Landscape',
892
+ 9 => 'Snow',
893
+ 10 => 'Text',
894
+ 11 => 'Fireworks',
895
+ 12 => 'Macro',
896
+ 13 => 'Museum',
897
+ 16 => 'Children',
898
+ 17 => 'Program',
899
+ 18 => 'Aperture Priority',
900
+ 19 => 'Shutter Priority',
901
+ 20 => 'Manual',
902
+ 25 => 'Back Light',
903
+ 28 => 'Candlelight',
904
+ 29 => 'Sunset',
905
+ 31 => 'Panorama Left-right',
906
+ 32 => 'Panorama Right-left',
907
+ 33 => 'Smart Scene',
908
+ 34 => 'High ISO',
909
+ },
910
+ },
911
+ # 0xfa04 - values: 0 (normally), 2 (panorama shots)
912
+ # 0xfa0f - values: 0 (normally), 1 (macro?)
913
+ # 0xfa11 - some sort of FNumber (x 100)
914
+ 0xfa19 => {
915
+ Name => 'SerialNumber', # (verified with Z712 - PH)
916
+ Writable => 'string',
917
+ },
918
+ 0xfa1d => {
919
+ Name => 'KodakImageWidth',
920
+ Writable => 'int16u',
921
+ },
922
+ 0xfa1e => {
923
+ Name => 'KodakImageHeight',
924
+ Writable => 'int16u',
925
+ },
926
+ 0xfa20 => {
927
+ Name => 'SensorWidth',
928
+ Writable => 'int16u',
929
+ },
930
+ 0xfa21 => {
931
+ Name => 'SensorHeight',
932
+ Writable => 'int16u',
933
+ },
934
+ 0xfa23 => {
935
+ Name => 'FNumber',
936
+ Writable => 'int16u',
937
+ Priority => 0,
938
+ ValueConv => '$val / 100',
939
+ ValueConvInv => '$val * 100',
940
+ },
941
+ 0xfa24 => {
942
+ Name => 'ExposureTime',
943
+ Writable => 'int32u',
944
+ Priority => 0,
945
+ ValueConv => '$val / 1e5',
946
+ ValueConvInv => '$val * 1e5',
947
+ PrintConv => 'Image::ExifTool::Exif::PrintExposureTime($val)',
948
+ PrintConvInv => 'Image::ExifTool::Exif::ConvertFraction($val)',
949
+ },
950
+ 0xfa2e => {
951
+ Name => 'ISO',
952
+ Writable => 'int16u',
953
+ Priority => 0,
954
+ },
955
+ 0xfa3d => {
956
+ Name => 'OpticalZoom',
957
+ Writable => 'int16u',
958
+ ValueConv => '$val / 100',
959
+ ValueConvInv => '$val * 100',
960
+ PrintConv => 'sprintf("%.2f",$val)',
961
+ PrintConvInv => '$val=~s/ ?x//; $val',
962
+ },
963
+ 0xfa46 => {
964
+ Name => 'ISO',
965
+ Writable => 'int16u',
966
+ Priority => 0,
967
+ },
968
+ # 0xfa4c - related to focal length (1=wide, 32=full zoom)
969
+ 0xfa51 => {
970
+ Name => 'KodakImageWidth',
971
+ Writable => 'int16u',
972
+ },
973
+ 0xfa52 => {
974
+ Name => 'KodakImageHeight',
975
+ Writable => 'int16u',
976
+ },
977
+ 0xfa54 => {
978
+ Name => 'ThumbnailWidth',
979
+ Writable => 'int16u',
980
+ },
981
+ 0xfa55 => {
982
+ Name => 'ThumbnailHeight',
983
+ Writable => 'int16u',
984
+ },
985
+ 0xfa57 => {
986
+ Name => 'PreviewImageWidth',
987
+ Writable => 'int16u',
988
+ },
989
+ 0xfa58 => {
990
+ Name => 'PreviewImageHeight',
991
+ Writable => 'int16u',
992
+ },
993
+ );
994
+
995
+ # Kodak SubIFD1 tags (ref PH)
996
+ %Image::ExifTool::Kodak::SubIFD1 = (
997
+ PROCESS_PROC => \&ProcessKodakIFD,
998
+ WRITE_PROC => \&WriteKodakIFD,
999
+ CHECK_PROC => \&Image::ExifTool::Exif::CheckExif,
1000
+ GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' },
1001
+ 0x0027 => {
1002
+ Name => 'ISO',
1003
+ Writable => 'int16u',
1004
+ Priority => 0,
1005
+ },
1006
+ 0x0028 => {
1007
+ Name => 'ISO',
1008
+ Writable => 'int16u',
1009
+ Priority => 0,
1010
+ },
1011
+ );
1012
+
1013
+ my %sceneModeUsed = (
1014
+ 0 => 'Program',
1015
+ 2 => 'Aperture Priority',
1016
+ 3 => 'Shutter Priority',
1017
+ 4 => 'Manual',
1018
+ 5 => 'Portrait',
1019
+ 6 => 'Sport',
1020
+ 7 => 'Children',
1021
+ 8 => 'Museum',
1022
+ 10 => 'High ISO',
1023
+ 11 => 'Text',
1024
+ 12 => 'Macro',
1025
+ 13 => 'Back Light',
1026
+ 16 => 'Landscape',
1027
+ 17 => 'Night Landscape',
1028
+ 18 => 'Night Portrait',
1029
+ 19 => 'Snow',
1030
+ 20 => 'Beach',
1031
+ 21 => 'Fireworks',
1032
+ 22 => 'Sunset',
1033
+ 23 => 'Candlelight',
1034
+ 28 => 'Panorama',
1035
+ );
1036
+
1037
+ # Kodak SubIFD2 tags (ref PH)
1038
+ %Image::ExifTool::Kodak::SubIFD2 = (
1039
+ PROCESS_PROC => \&ProcessKodakIFD,
1040
+ WRITE_PROC => \&WriteKodakIFD,
1041
+ CHECK_PROC => \&Image::ExifTool::Exif::CheckExif,
1042
+ GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' },
1043
+ 0x6002 => {
1044
+ Name => 'SceneModeUsed',
1045
+ Writable => 'int32u',
1046
+ PrintConvColumns => 2,
1047
+ PrintConv => \%sceneModeUsed,
1048
+ },
1049
+ 0x6006 => {
1050
+ Name => 'OpticalZoom',
1051
+ Writable => 'int32u',
1052
+ ValueConv => '$val / 100',
1053
+ ValueConvInv => '$val * 100',
1054
+ PrintConv => 'sprintf("%.2f",$val)',
1055
+ PrintConvInv => '$val=~s/ ?x//; $val',
1056
+ },
1057
+ # 0x6009 - some sort of FNumber (x 100)
1058
+ 0x6103 => {
1059
+ Name => 'MaxAperture',
1060
+ Writable => 'int32u',
1061
+ ValueConv => '$val / 100',
1062
+ ValueConvInv => '$val * 100',
1063
+ },
1064
+ 0xf002 => {
1065
+ Name => 'SceneModeUsed',
1066
+ Writable => 'int32u',
1067
+ PrintConvColumns => 2,
1068
+ PrintConv => \%sceneModeUsed,
1069
+ },
1070
+ 0xf006 => {
1071
+ Name => 'OpticalZoom',
1072
+ Writable => 'int32u',
1073
+ ValueConv => '$val / 100',
1074
+ ValueConvInv => '$val * 100',
1075
+ PrintConv => 'sprintf("%.2f",$val)',
1076
+ PrintConvInv => '$val=~s/ ?x//; $val',
1077
+ },
1078
+ # 0xf009 - some sort of FNumber (x 100)
1079
+ 0xf103 => {
1080
+ Name => 'FNumber',
1081
+ Writable => 'int32u',
1082
+ Priority => 0,
1083
+ ValueConv => '$val / 100',
1084
+ ValueConvInv => '$val * 100',
1085
+ },
1086
+ 0xf104 => {
1087
+ Name => 'ExposureTime',
1088
+ Writable => 'int32u',
1089
+ Priority => 0,
1090
+ ValueConv => '$val / 1e6',
1091
+ ValueConvInv => '$val * 1e6',
1092
+ PrintConv => 'Image::ExifTool::Exif::PrintExposureTime($val)',
1093
+ PrintConvInv => 'Image::ExifTool::Exif::ConvertFraction($val)',
1094
+ },
1095
+ 0xf105 => {
1096
+ Name => 'ISO',
1097
+ Writable => 'int32u',
1098
+ Priority => 0,
1099
+ ValueConv => '$val / 10',
1100
+ ValueConvInv => '$val * 10',
1101
+ },
1102
+ );
1103
+
1104
+ # Kodak SubIFD3 tags (ref PH)
1105
+ %Image::ExifTool::Kodak::SubIFD3 = (
1106
+ PROCESS_PROC => \&ProcessKodakIFD,
1107
+ WRITE_PROC => \&WriteKodakIFD,
1108
+ CHECK_PROC => \&Image::ExifTool::Exif::CheckExif,
1109
+ GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' },
1110
+ 0x1000 => {
1111
+ Name => 'OpticalZoom',
1112
+ Writable => 'int16u',
1113
+ ValueConv => '$val / 100',
1114
+ ValueConvInv => '$val * 100',
1115
+ PrintConv => 'sprintf("%.2f",$val)',
1116
+ PrintConvInv => '$val=~s/ ?x//; $val',
1117
+ },
1118
+ # 0x1002 - related to focal length (1=wide, 32=full zoom)
1119
+ # 0x1006 - pictures remaining? (gradually decreases as pictures are taken)
1120
+ #
1121
+ # the following unknown Kodak tags in subIFD3 may store an IFD count of 0 or 1 instead
1122
+ # of the correct value (which changes from model to model). This bad count is fixed
1123
+ # with the "FixCount" patch. Models known to have this problem include:
1124
+ # M380, M1033, M1093IS, V1073, V1233, V1253, V1273, V1275, V1285, Z612, Z712,
1125
+ # Z812, Z885, Z915, Z950, Z1012IS, Z1085IS, ZD710
1126
+ #
1127
+ 0x2007 => {
1128
+ Name => 'Kodak_SubIFD3_0x2007',
1129
+ Flags => [ 'FixCount', 'Unknown', 'Hidden' ],
1130
+ },
1131
+ 0x2008 => {
1132
+ Name => 'Kodak_SubIFD3_0x2008',
1133
+ Flags => [ 'FixCount', 'Unknown', 'Hidden' ],
1134
+ },
1135
+ 0x2009 => {
1136
+ Name => 'Kodak_SubIFD3_0x2009',
1137
+ Flags => [ 'FixCount', 'Unknown', 'Hidden' ],
1138
+ },
1139
+ 0x200a => {
1140
+ Name => 'Kodak_SubIFD3_0x200a',
1141
+ Flags => [ 'FixCount', 'Unknown', 'Hidden' ],
1142
+ },
1143
+ 0x200b => {
1144
+ Name => 'Kodak_SubIFD3_0x200b',
1145
+ Flags => [ 'FixCount', 'Unknown', 'Hidden' ],
1146
+ },
1147
+ 0x3020 => {
1148
+ Name => 'Kodak_SubIFD3_0x3020',
1149
+ Flags => [ 'FixCount', 'Unknown', 'Hidden' ],
1150
+ },
1151
+ 0x3030 => {
1152
+ Name => 'Kodak_SubIFD3_0x3030',
1153
+ Flags => [ 'FixCount', 'Unknown', 'Hidden' ],
1154
+ },
1155
+ 0x3040 => {
1156
+ Name => 'Kodak_SubIFD3_0x3040',
1157
+ Flags => [ 'FixCount', 'Unknown', 'Hidden' ],
1158
+ },
1159
+ 0x3050 => {
1160
+ Name => 'Kodak_SubIFD3_0x3050',
1161
+ Flags => [ 'FixCount', 'Unknown', 'Hidden' ],
1162
+ },
1163
+ 0x3060 => {
1164
+ Name => 'Kodak_SubIFD3_0x3060',
1165
+ Flags => [ 'FixCount', 'Unknown', 'Hidden' ],
1166
+ },
1167
+ 0x8001 => {
1168
+ Name => 'Kodak_SubIFD3_0x8001',
1169
+ Flags => [ 'FixCount', 'Unknown', 'Hidden' ],
1170
+ },
1171
+ 0x8002 => {
1172
+ Name => 'Kodak_SubIFD3_0x8002',
1173
+ Flags => [ 'FixCount', 'Unknown', 'Hidden' ],
1174
+ },
1175
+ 0x8003 => {
1176
+ Name => 'Kodak_SubIFD3_0x8003',
1177
+ Flags => [ 'FixCount', 'Unknown', 'Hidden' ],
1178
+ },
1179
+ 0x8004 => {
1180
+ Name => 'Kodak_SubIFD3_0x8004',
1181
+ Flags => [ 'FixCount', 'Unknown', 'Hidden' ],
1182
+ },
1183
+ 0x8005 => {
1184
+ Name => 'Kodak_SubIFD3_0x8005',
1185
+ Flags => [ 'FixCount', 'Unknown', 'Hidden' ],
1186
+ },
1187
+ 0x8006 => {
1188
+ Name => 'Kodak_SubIFD3_0x8006',
1189
+ Flags => [ 'FixCount', 'Unknown', 'Hidden' ],
1190
+ },
1191
+ 0x8007 => {
1192
+ Name => 'Kodak_SubIFD3_0x8007',
1193
+ Flags => [ 'FixCount', 'Unknown', 'Hidden' ],
1194
+ },
1195
+ 0x8008 => {
1196
+ Name => 'Kodak_SubIFD3_0x8008',
1197
+ Flags => [ 'FixCount', 'Unknown', 'Hidden' ],
1198
+ },
1199
+ 0x8009 => {
1200
+ Name => 'Kodak_SubIFD3_0x8009',
1201
+ Flags => [ 'FixCount', 'Unknown', 'Hidden' ],
1202
+ },
1203
+ 0x800a => {
1204
+ Name => 'Kodak_SubIFD3_0x800a',
1205
+ Flags => [ 'FixCount', 'Unknown', 'Hidden' ],
1206
+ },
1207
+ 0x800b => {
1208
+ Name => 'Kodak_SubIFD3_0x800b',
1209
+ Flags => [ 'FixCount', 'Unknown', 'Hidden' ],
1210
+ },
1211
+ 0x800c => {
1212
+ Name => 'Kodak_SubIFD3_0x800c',
1213
+ Flags => [ 'FixCount', 'Unknown', 'Hidden' ],
1214
+ },
1215
+ );
1216
+
1217
+ # Kodak SubIFD4 tags (ref PH)
1218
+ %Image::ExifTool::Kodak::SubIFD4 = (
1219
+ PROCESS_PROC => \&ProcessKodakIFD,
1220
+ WRITE_PROC => \&WriteKodakIFD,
1221
+ CHECK_PROC => \&Image::ExifTool::Exif::CheckExif,
1222
+ GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' },
1223
+ );
1224
+
1225
+ # Kodak SubIFD5 tags (ref PH)
1226
+ %Image::ExifTool::Kodak::SubIFD5 = (
1227
+ PROCESS_PROC => \&ProcessKodakIFD,
1228
+ WRITE_PROC => \&WriteKodakIFD,
1229
+ CHECK_PROC => \&Image::ExifTool::Exif::CheckExif,
1230
+ GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' },
1231
+ 0x000f => {
1232
+ Name => 'OpticalZoom',
1233
+ Writable => 'int16u',
1234
+ ValueConv => '$val / 100',
1235
+ ValueConvInv => '$val * 100',
1236
+ PrintConv => 'sprintf("%.2f",$val)',
1237
+ PrintConvInv => '$val=~s/ ?x//; $val',
1238
+ },
1239
+ );
1240
+
1241
+ # Kodak SubIFD6 tags (ref PH)
1242
+ %Image::ExifTool::Kodak::SubIFD6 = (
1243
+ PROCESS_PROC => \&ProcessKodakIFD,
1244
+ WRITE_PROC => \&WriteKodakIFD,
1245
+ CHECK_PROC => \&Image::ExifTool::Exif::CheckExif,
1246
+ GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' },
1247
+ NOTES => 'SubIFD6 is written by the M580.',
1248
+ );
1249
+
1250
+ # Decoded from P712, P850 and P880 samples (ref PH)
1251
+ %Image::ExifTool::Kodak::CameraInfo = (
1252
+ WRITE_PROC => \&Image::ExifTool::Exif::WriteExif,
1253
+ CHECK_PROC => \&Image::ExifTool::Exif::CheckExif,
1254
+ GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' },
1255
+ NOTES => 'These tags are used by the P712, P850 and P880.',
1256
+ 0xf900 => {
1257
+ Name => 'SensorWidth',
1258
+ Writable => 'int16u',
1259
+ Notes => 'effective sensor size',
1260
+ },
1261
+ 0xf901 => {
1262
+ Name => 'SensorHeight',
1263
+ Writable => 'int16u',
1264
+ },
1265
+ 0xf902 => {
1266
+ Name => 'BayerPattern',
1267
+ Writable => 'string',
1268
+ },
1269
+ 0xf903 => {
1270
+ Name => 'SensorFullWidth',
1271
+ Writable => 'int16u',
1272
+ Notes => 'includes black border?',
1273
+ },
1274
+ 0xf904 => {
1275
+ Name => 'SensorFullHeight',
1276
+ Writable => 'int16u',
1277
+ },
1278
+ 0xf907 => {
1279
+ Name => 'KodakImageWidth',
1280
+ Writable => 'int16u',
1281
+ },
1282
+ 0xf908 => {
1283
+ Name => 'KodakImageHeight',
1284
+ Writable => 'int16u',
1285
+ },
1286
+ 0xfa00 => {
1287
+ Name => 'KodakInfoType',
1288
+ Writable => 'string',
1289
+ },
1290
+ 0xfa04 => {
1291
+ Name => 'SerialNumber', # (unverified)
1292
+ Writable => 'string',
1293
+ },
1294
+ 0xfd04 => {
1295
+ Name => 'FNumber',
1296
+ Writable => 'int16u',
1297
+ Priority => 0,
1298
+ ValueConv => '$val / 100',
1299
+ ValueConvInv => '$val * 100',
1300
+ },
1301
+ 0xfd05 => {
1302
+ Name => 'ExposureTime',
1303
+ Writable => 'int32u',
1304
+ Priority => 0,
1305
+ ValueConv => '$val / 1e6',
1306
+ ValueConvInv => '$val * 1e6',
1307
+ PrintConv => 'Image::ExifTool::Exif::PrintExposureTime($val)',
1308
+ PrintConvInv => 'Image::ExifTool::Exif::ConvertFraction($val)',
1309
+ },
1310
+ 0xfd06 => {
1311
+ Name => 'ISO',
1312
+ Writable => 'int16u',
1313
+ Priority => 0,
1314
+ },
1315
+ );
1316
+
1317
+ # treat unknown maker notes as binary data (allows viewing with -U)
1318
+ %Image::ExifTool::Kodak::Unknown = (
1319
+ GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' },
1320
+ PROCESS_PROC => \&Image::ExifTool::ProcessBinaryData,
1321
+ FIRST_ENTRY => 0,
1322
+ );
1323
+
1324
+ # tags found in the KodakIFD (in IFD0 of KDC, DCR, TIFF and JPEG images) (ref PH)
1325
+ %Image::ExifTool::Kodak::IFD = (
1326
+ GROUPS => { 0 => 'MakerNotes', 1 => 'KodakIFD', 2 => 'Image'},
1327
+ WRITE_PROC => \&Image::ExifTool::Exif::WriteExif,
1328
+ CHECK_PROC => \&Image::ExifTool::Exif::CheckExif,
1329
+ WRITE_GROUP => 'KodakIFD',
1330
+ SET_GROUP1 => 1,
1331
+ NOTES => q{
1332
+ These tags are found in a separate IFD of JPEG, TIFF, DCR and KDC images
1333
+ from some older Kodak models such as the DC50, DC120, DCS760C, DCS Pro 14N,
1334
+ 14nx, SLR/n, Pro Back and Canon EOS D2000.
1335
+ },
1336
+ # 0x0000: int8u[4] - values: "1 0 0 0" (DC50), "1 1 0 0" (DC120)
1337
+ 0x0001 => {
1338
+ # (related to EV but exact meaning unknown)
1339
+ Name => 'UnknownEV',
1340
+ Writable => 'rational64u',
1341
+ Unknown => 1,
1342
+ },
1343
+ # 0x0002: int8u - values: 0
1344
+ 0x0003 => {
1345
+ Name => 'ExposureValue',
1346
+ Writable => 'rational64u',
1347
+ },
1348
+ # 0x0004: rational64u - values: 2.875,3.375,3.625,4,4.125,7.25
1349
+ # 0x0005: int8u - values: 0
1350
+ # 0x0006: int32u[12] - ?
1351
+ # 0x0007: int32u[3] - values: "65536 67932 69256"
1352
+ 0x03e9 => { Name => 'OriginalFileName', Writable => 'string' },
1353
+ 0x03eb => 'SensorLeftBorder',
1354
+ 0x03ec => 'SensorTopBorder',
1355
+ 0x03ed => 'SensorImageWidth',
1356
+ 0x03ee => 'SensorImageHeight',
1357
+ 0x03f1 => {
1358
+ Name => 'TextualInfo',
1359
+ SubDirectory => {
1360
+ TagTable => 'Image::ExifTool::Kodak::TextualInfo',
1361
+ },
1362
+ },
1363
+ # 0x03f2 - FlashMode (ref IB)
1364
+ # 0x03f3 - FlashCompensation (ref IB)
1365
+ # 0x03f8 - MinAperture (ref IB)
1366
+ # 0x03f9 - MaxAperture (ref IB)
1367
+ 0x03fc => { #3
1368
+ Name => 'WhiteBalance',
1369
+ Writable => 'int16u',
1370
+ Priority => 0,
1371
+ PrintConv => { }, # no values yet known
1372
+ },
1373
+ 0x03fd => { #3
1374
+ Name => 'Processing',
1375
+ Condition => '$count == 72',
1376
+ SubDirectory => {
1377
+ TagTable => 'Image::ExifTool::Kodak::Processing',
1378
+ },
1379
+ },
1380
+ 0x0401 => {
1381
+ Name => 'Time',
1382
+ Groups => { 2 => 'Time' },
1383
+ Writable => 'string',
1384
+ },
1385
+ 0x0406 => { #IB
1386
+ Name => 'CameraTemperature',
1387
+ # (when count is 2, values seem related to temperature, but are not Celius)
1388
+ Condition => '$count == 1',
1389
+ Groups => { 2 => 'Camera' },
1390
+ Writable => 'rational64s',
1391
+ PrintConv => '"$val C"',
1392
+ PrintConvInv => '$val=~s/ ?C//; $val',
1393
+ },
1394
+ 0x0407 => { #IB
1395
+ Name => 'AdapterVoltage',
1396
+ Groups => { 2 => 'Camera' },
1397
+ Writable => 'rational64u',
1398
+ },
1399
+ 0x0408 => { #IB
1400
+ Name => 'BatteryVoltage',
1401
+ Groups => { 2 => 'Camera' },
1402
+ Writable => 'rational64u',
1403
+ },
1404
+ 0x0414 => { Name => 'NCDFileInfo', Writable => 'string' },
1405
+ 0x0846 => { #3
1406
+ Name => 'ColorTemperature',
1407
+ Writable => 'int16u',
1408
+ },
1409
+ 0x0848 => 'WB_RGBLevelsDaylight', #IB
1410
+ 0x0849 => 'WB_RGBLevelsTungsten', #IB
1411
+ 0x084a => 'WB_RGBLevelsFluorescent', #IB
1412
+ 0x084b => 'WB_RGBLevelsFlash', #IB
1413
+ 0x084c => 'WB_RGBLevelsCustom', #IB
1414
+ 0x084d => 'WB_RGBLevelsAuto', #IB
1415
+ 0x0852 => 'WB_RGBMul0', #3
1416
+ 0x0853 => 'WB_RGBMul1', #3
1417
+ 0x0854 => 'WB_RGBMul2', #3
1418
+ 0x0855 => 'WB_RGBMul3', #3
1419
+ 0x085c => { Name => 'WB_RGBCoeffs0', Binary => 1 }, #3
1420
+ 0x085d => { Name => 'WB_RGBCoeffs1', Binary => 1 }, #3
1421
+ 0x085e => { Name => 'WB_RGBCoeffs2', Binary => 1 }, #3
1422
+ 0x085f => { Name => 'WB_RGBCoeffs3', Binary => 1 }, #3
1423
+ # 0x089d => true analogue ISO values possible (ref IB)
1424
+ # 0x089e => true analogue ISO used at capture (ref IB)
1425
+ # 0x089f => ISO calibration gain (ref IB)
1426
+ # 0x08a0 => ISO calibration gain table (ref IB)
1427
+ # 0x08a1 => exposure headroom coefficient (ref IB)
1428
+ 0x0903 => { Name => 'BaseISO', Writable => 'rational64u' }, #IB (ISO before digital gain)
1429
+ # 0x090d: linear table (ref 3)
1430
+ 0x09ce => { Name => 'SensorSerialNumber', Writable => 'string', Groups => { 2 => 'Camera' } }, #IB
1431
+ # 0x0c81: some sort of date (manufacture date?) - PH
1432
+ 0x0ce5 => { Name => 'FirmwareVersion', Writable => 'string', Groups => { 2 => 'Camera' } },
1433
+ 0x0e4c => { #IB
1434
+ Name => 'KodakLook',
1435
+ Format => 'undef',
1436
+ Writable => 'string',
1437
+ ValueConv => '$val=~tr/\0/\n/; $val',
1438
+ ValueConvInv => '$val=~tr/\n/\0/; $val',
1439
+ },
1440
+ 0x1389 => { Name => 'InputProfile', Writable => 'undef', Binary => 1 }, #IB
1441
+ 0x138a => { Name => 'KodakLookProfile', Writable => 'undef', Binary => 1 }, #IB
1442
+ 0x138b => { Name => 'OutputProfile', Writable => 'undef', Binary => 1 }, #IB
1443
+ # 0x1390: value: "DCSProSLRn" (tone curve name?) - PH
1444
+ 0x1391 => { Name => 'ToneCurveFileName',Writable => 'string' },
1445
+ 0x1784 => { Name => 'ISO', Writable => 'int32u' }, #3
1446
+ );
1447
+
1448
+ # contains WB adjust set in software (ref 3)
1449
+ %Image::ExifTool::Kodak::Processing = (
1450
+ GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' },
1451
+ PROCESS_PROC => \&Image::ExifTool::ProcessBinaryData,
1452
+ WRITE_PROC => \&Image::ExifTool::WriteBinaryData,
1453
+ CHECK_PROC => \&Image::ExifTool::CheckBinaryData,
1454
+ FORMAT => 'int16u',
1455
+ FIRST_ENTRY => 0,
1456
+ 20 => {
1457
+ Name => 'WB_RGBLevels',
1458
+ Format => 'int16u[3]',
1459
+ ValueConv => q{
1460
+ my @a = split ' ',$val;
1461
+ foreach (@a) {
1462
+ $_ = 2048 / $_ if $_;
1463
+ }
1464
+ return join ' ', @a;
1465
+ }
1466
+ },
1467
+ );
1468
+
1469
+ # tags found in the Kodak KDC_IFD (in IFD0 of KDC images) (ref 3)
1470
+ %Image::ExifTool::Kodak::KDC_IFD = (
1471
+ GROUPS => { 0 => 'MakerNotes', 1 => 'KDC_IFD', 2 => 'Image'},
1472
+ WRITE_PROC => \&Image::ExifTool::Exif::WriteExif,
1473
+ CHECK_PROC => \&Image::ExifTool::Exif::CheckExif,
1474
+ WRITE_GROUP => 'KDC_IFD',
1475
+ SET_GROUP1 => 1,
1476
+ NOTES => q{
1477
+ These tags are found in a separate IFD of KDC images from some newer Kodak
1478
+ models such as the P880 and Z1015IS.
1479
+ },
1480
+ 0xfa00 => {
1481
+ Name => 'SerialNumber', #PH (unverified)
1482
+ Writable => 'string',
1483
+ },
1484
+ 0xfa0d => {
1485
+ Name => 'WhiteBalance',
1486
+ Writable => 'int8u',
1487
+ PrintConv => { #PH
1488
+ 0 => 'Auto',
1489
+ 1 => 'Fluorescent', # (NC)
1490
+ 2 => 'Tungsten', # (NC)
1491
+ 3 => 'Daylight', # (NC)
1492
+ 6 => 'Shade', # (NC, called "Open Shade" by Kodak)
1493
+ },
1494
+ },
1495
+ # the following tags are numbered for use in the Composite tag lookup
1496
+ 0xfa25 => 'WB_RGBLevelsAuto',
1497
+ 0xfa27 => 'WB_RGBLevelsTungsten', # (NC)
1498
+ 0xfa28 => 'WB_RGBLevelsFluorescent', # (NC)
1499
+ 0xfa29 => 'WB_RGBLevelsDaylight', # (NC)
1500
+ 0xfa2a => 'WB_RGBLevelsShade', # (NC)
1501
+ );
1502
+
1503
+ # textual-based Kodak TextualInfo tags (not found in KDC images) (ref PH)
1504
+ %Image::ExifTool::Kodak::TextualInfo = (
1505
+ GROUPS => { 0 => 'MakerNotes', 1 => 'Kodak', 2 => 'Image'},
1506
+ PROCESS_PROC => \&ProcessKodakText,
1507
+ NOTES => q{
1508
+ Below is a list of tags which have been observed in the Kodak TextualInfo
1509
+ data, however ExifTool will extract information from any tags found here.
1510
+ },
1511
+ 'Actual Compensation' => 'ActualCompensation',
1512
+ 'AF Function' => 'AFMode', # values: "S" (=Single?, then maybe C for Continuous, M for Manual?) - PH
1513
+ 'Aperture' => {
1514
+ Name => 'Aperture',
1515
+ ValueConv => '$val=~s/^f//i; $val',
1516
+ },
1517
+ 'Auto Bracket' => 'AutoBracket',
1518
+ 'Brightness Value' => 'BrightnessValue',
1519
+ 'Camera' => 'CameraModel',
1520
+ 'Camera body' => 'CameraBody',
1521
+ 'Compensation' => 'ExposureCompensation',
1522
+ 'Date' => {
1523
+ Name => 'Date',
1524
+ Groups => { 2 => 'Time' },
1525
+ },
1526
+ 'Exposure Bias' => 'ExposureBias',
1527
+ 'Exposure Mode' => {
1528
+ Name => 'ExposureMode',
1529
+ PrintConv => {
1530
+ 'M' => 'Manual',
1531
+ 'A' => 'Aperture Priority', #(NC -- I suppose this could be "Auto" too)
1532
+ 'S' => 'Shutter Priority', #(NC)
1533
+ 'P' => 'Program', #(NC)
1534
+ 'B' => 'Bulb', #(NC)
1535
+ # have seen "Manual (M)" written by DCS760C - PH
1536
+ },
1537
+ },
1538
+ 'Firmware Version' => 'FirmwareVersion',
1539
+ 'Flash Compensation' => 'FlashExposureComp',
1540
+ 'Flash Fired' => 'FlashFired',
1541
+ 'Flash Sync Mode' => 'FlashSyncMode',
1542
+ 'Focal Length' => {
1543
+ Name => 'FocalLength',
1544
+ PrintConv => '"$val mm"',
1545
+ },
1546
+ 'Height' => 'KodakImageHeight',
1547
+ 'Image Number' => 'ImageNumber',
1548
+ 'ISO' => 'ISO',
1549
+ 'ISO Speed' => 'ISO',
1550
+ 'Max Aperture' => {
1551
+ Name => 'MaxAperture',
1552
+ ValueConv => '$val=~s/^f//i; $val',
1553
+ },
1554
+ 'Meter Mode' => 'MeterMode',
1555
+ 'Min Aperture' => {
1556
+ Name => 'MinAperture',
1557
+ ValueConv => '$val=~s/^f//i; $val',
1558
+ },
1559
+ 'Popup Flash' => 'PopupFlash',
1560
+ 'Serial Number' => 'SerialNumber',
1561
+ 'Shooting Mode' => 'ShootingMode',
1562
+ 'Shutter' => 'ShutterSpeed',
1563
+ 'Temperature' => 'Temperature', # with a value of 15653, what could this be? - PH
1564
+ 'Time' => {
1565
+ Name => 'Time',
1566
+ Groups => { 2 => 'Time' },
1567
+ },
1568
+ 'White balance' => 'WhiteBalance',
1569
+ 'Width' => 'KodakImageWidth',
1570
+ '_other_info' => {
1571
+ Name => 'OtherInfo',
1572
+ Notes => 'any other information without a tag name',
1573
+ },
1574
+ );
1575
+
1576
+ # Kodak APP3 "Meta" tags (ref 2)
1577
+ %Image::ExifTool::Kodak::Meta = (
1578
+ GROUPS => { 0 => 'Meta', 1 => 'MetaIFD', 2 => 'Image'},
1579
+ WRITE_PROC => \&Image::ExifTool::Exif::WriteExif,
1580
+ CHECK_PROC => \&Image::ExifTool::Exif::CheckExif,
1581
+ WRITE_GROUP => 'MetaIFD', # default write group
1582
+ NOTES => q{
1583
+ These tags are found in the APP3 "Meta" segment of JPEG images from Kodak
1584
+ cameras such as the DC280, DC3400, DC5000, MC3, M580, Z950 and Z981. The
1585
+ structure of this segment is similar to the APP1 "Exif" segment, but a
1586
+ different set of tags is used.
1587
+ },
1588
+ 0xc350 => 'FilmProductCode',
1589
+ 0xc351 => 'ImageSourceEK',
1590
+ 0xc352 => 'CaptureConditionsPAR',
1591
+ 0xc353 => {
1592
+ Name => 'CameraOwner',
1593
+ Writable => 'undef',
1594
+ RawConv => 'Image::ExifTool::Exif::ConvertExifText($self,$val,$tag)',
1595
+ RawConvInv => 'Image::ExifTool::Exif::EncodeExifText($self,$val)',
1596
+ },
1597
+ 0xc354 => {
1598
+ Name => 'SerialNumber',
1599
+ Writable => 'undef',
1600
+ Groups => { 2 => 'Camera' },
1601
+ RawConv => 'Image::ExifTool::Exif::ConvertExifText($self,$val,$tag)', #PH
1602
+ RawConvInv => 'Image::ExifTool::Exif::EncodeExifText($self,$val)',
1603
+ },
1604
+ 0xc355 => 'UserSelectGroupTitle',
1605
+ 0xc356 => 'DealerIDNumber',
1606
+ 0xc357 => 'CaptureDeviceFID',
1607
+ 0xc358 => 'EnvelopeNumber',
1608
+ 0xc359 => 'FrameNumber',
1609
+ 0xc35a => 'FilmCategory',
1610
+ 0xc35b => 'FilmGencode',
1611
+ 0xc35c => 'ModelAndVersion',
1612
+ 0xc35d => 'FilmSize',
1613
+ 0xc35e => 'SBA_RGBShifts',
1614
+ 0xc35f => 'SBAInputImageColorspace',
1615
+ 0xc360 => 'SBAInputImageBitDepth',
1616
+ 0xc361 => {
1617
+ Name => 'SBAExposureRecord',
1618
+ Binary => 1,
1619
+ },
1620
+ 0xc362 => {
1621
+ Name => 'UserAdjSBA_RGBShifts',
1622
+ Binary => 1,
1623
+ },
1624
+ 0xc363 => 'ImageRotationStatus',
1625
+ 0xc364 => 'RollGuidElements',
1626
+ 0xc365 => 'MetadataNumber',
1627
+ 0xc366 => 'EditTagArray',
1628
+ 0xc367 => 'Magnification',
1629
+ # 0xc36b - string[8]: "1.0"
1630
+ 0xc36c => 'NativeXResolution',
1631
+ 0xc36d => 'NativeYResolution',
1632
+ 0xc36e => {
1633
+ Name => 'KodakEffectsIFD',
1634
+ Flags => 'SubIFD',
1635
+ Groups => { 1 => 'KodakEffectsIFD' },
1636
+ SubDirectory => {
1637
+ TagTable => 'Image::ExifTool::Kodak::SpecialEffects',
1638
+ Start => '$val',
1639
+ },
1640
+ },
1641
+ 0xc36f => {
1642
+ Name => 'KodakBordersIFD',
1643
+ Flags => 'SubIFD',
1644
+ Groups => { 1 => 'KodakBordersIFD' },
1645
+ SubDirectory => {
1646
+ TagTable => 'Image::ExifTool::Kodak::Borders',
1647
+ Start => '$val',
1648
+ },
1649
+ },
1650
+ 0xc37a => 'NativeResolutionUnit',
1651
+ 0xc418 => 'SourceImageDirectory',
1652
+ 0xc419 => 'SourceImageFileName',
1653
+ 0xc41a => 'SourceImageVolumeName',
1654
+ 0xc46c => 'PrintQuality',
1655
+ 0xc46e => 'ImagePrintStatus',
1656
+ # 0cx46f - int16u: 1
1657
+ );
1658
+
1659
+ # Kodak APP3 "Meta" Special Effects sub-IFD (ref 2)
1660
+ %Image::ExifTool::Kodak::SpecialEffects = (
1661
+ GROUPS => { 0 => 'Meta', 1 => 'KodakEffectsIFD', 2 => 'Image'},
1662
+ WRITE_PROC => \&Image::ExifTool::Exif::WriteExif,
1663
+ 0 => 'DigitalEffectsVersion',
1664
+ 1 => {
1665
+ Name => 'DigitalEffectsName',
1666
+ PrintConv => 'Image::ExifTool::Exif::ConvertExifText($self,$val,"DigitalEffectsName")',
1667
+ },
1668
+ 2 => 'DigitalEffectsType',
1669
+ );
1670
+
1671
+ # Kodak APP3 "Meta" Borders sub-IFD (ref 2)
1672
+ %Image::ExifTool::Kodak::Borders = (
1673
+ GROUPS => { 0 => 'Meta', 1 => 'KodakBordersIFD', 2 => 'Image'},
1674
+ WRITE_PROC => \&Image::ExifTool::Exif::WriteExif,
1675
+ 0 => 'BordersVersion',
1676
+ 1 => {
1677
+ Name => 'BorderName',
1678
+ PrintConv => 'Image::ExifTool::Exif::ConvertExifText($self,$val,"BorderName")',
1679
+ },
1680
+ 2 => 'BorderID',
1681
+ 3 => 'BorderLocation',
1682
+ 4 => 'BorderType',
1683
+ 8 => 'WatermarkType',
1684
+ );
1685
+
1686
+ # tags in Kodak MOV videos (ref PH)
1687
+ # (similar information in Kodak,Minolta,Nikon,Olympus,Pentax and Sanyo videos)
1688
+ %Image::ExifTool::Kodak::MOV = (
1689
+ PROCESS_PROC => \&Image::ExifTool::ProcessBinaryData,
1690
+ GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' },
1691
+ FIRST_ENTRY => 0,
1692
+ NOTES => q{
1693
+ This information is found in the TAGS atom of MOV videos from Kodak models
1694
+ such as the P880.
1695
+ },
1696
+ 0 => {
1697
+ Name => 'Make',
1698
+ Format => 'string[21]',
1699
+ },
1700
+ 0x16 => {
1701
+ Name => 'Model',
1702
+ Format => 'string[42]',
1703
+ },
1704
+ 0x40 => {
1705
+ Name => 'ModelType',
1706
+ Format => 'string[8]',
1707
+ },
1708
+ # (01 00 at offset 0x48)
1709
+ 0x4e => {
1710
+ Name => 'ExposureTime',
1711
+ Format => 'int32u',
1712
+ ValueConv => '$val ? 10 / $val : 0',
1713
+ PrintConv => 'Image::ExifTool::Exif::PrintExposureTime($val)',
1714
+ },
1715
+ 0x52 => {
1716
+ Name => 'FNumber',
1717
+ Format => 'rational64u',
1718
+ PrintConv => 'sprintf("%.1f",$val)',
1719
+ },
1720
+ 0x5a => {
1721
+ Name => 'ExposureCompensation',
1722
+ Format => 'rational64s',
1723
+ PrintConv => 'Image::ExifTool::Exif::PrintFraction($val)',
1724
+ },
1725
+ # 0x6c => 'WhiteBalance', ?
1726
+ 0x70 => {
1727
+ Name => 'FocalLength',
1728
+ Format => 'rational64u',
1729
+ PrintConv => 'sprintf("%.1f mm",$val)',
1730
+ },
1731
+ );
1732
+
1733
+ # Kodak DcMD atoms (ref PH)
1734
+ %Image::ExifTool::Kodak::DcMD = (
1735
+ GROUPS => { 0 => 'MakerNotes', 2 => 'Video' },
1736
+ NOTES => 'Metadata directory found in MOV and MP4 videos from some Kodak cameras.',
1737
+ Cmbo => {
1738
+ Name => 'CameraByteOrder',
1739
+ PrintConv => {
1740
+ II => 'Little-endian (Intel, II)',
1741
+ MM => 'Big-endian (Motorola, MM)',
1742
+ },
1743
+ },
1744
+ CMbo => { # (as written by Kodak Playsport video camera)
1745
+ Name => 'CameraByteOrder',
1746
+ PrintConv => {
1747
+ II => 'Little-endian (Intel, II)',
1748
+ MM => 'Big-endian (Motorola, MM)',
1749
+ },
1750
+ },
1751
+ DcME => {
1752
+ Name => 'DcME',
1753
+ SubDirectory => {
1754
+ TagTable => 'Image::ExifTool::Kodak::DcME',
1755
+ },
1756
+ },
1757
+ DcEM => {
1758
+ Name => 'DcEM',
1759
+ SubDirectory => {
1760
+ TagTable => 'Image::ExifTool::Kodak::DcEM',
1761
+ },
1762
+ },
1763
+ );
1764
+
1765
+ # Kodak DcME atoms (ref PH)
1766
+ %Image::ExifTool::Kodak::DcME = (
1767
+ GROUPS => { 0 => 'MakerNotes', 2 => 'Video' },
1768
+ # Mtmd - 24 bytes: ("00 00 00 00 00 00 00 01" x 3)
1769
+ # Keyw - keywords? (six bytes all zero)
1770
+ # Rate - 2 bytes: 00 00
1771
+ );
1772
+
1773
+ # Kodak DcEM atoms (ref PH)
1774
+ %Image::ExifTool::Kodak::DcEM = (
1775
+ GROUPS => { 0 => 'MakerNotes', 2 => 'Video' },
1776
+ # Mtmd - 24 bytes: ("00 00 00 00 00 00 00 01" x 3)
1777
+ # Csat - 16 bytes: 00 06 00 00 62 00 61 00 73 00 69 00 63 00 00 00 [....b.a.s.i.c...]
1778
+ # Ksre - 8 bytes: 00 01 00 00 00 00
1779
+ );
1780
+
1781
+ # tags in "free" atom of Kodak M5370 MP4 videos (ref PH)
1782
+ %Image::ExifTool::Kodak::Free = (
1783
+ GROUPS => { 0 => 'MakerNotes', 2 => 'Video' },
1784
+ NOTES => q{
1785
+ Information stored in the "free" atom of Kodak MP4 videos. (VERY bad form
1786
+ for Kodak to store useful information in an atom intended for unused space!)
1787
+ },
1788
+ # (2012/01/19: Kodak files for bankruptcy -- this is poetic metadata justice)
1789
+ Seri => {
1790
+ Name => 'SerialNumber',
1791
+ # byte 0 is string length; byte 1 is zero; string starts at byte 2
1792
+ ValueConv => 'substr($val, 2, unpack("C",$val))',
1793
+ },
1794
+ SVer => {
1795
+ Name => 'FirmwareVersion',
1796
+ ValueConv => 'substr($val, 2, unpack("C",$val))',
1797
+ },
1798
+ # Clor - 2 bytes: 0 1 (?)
1799
+ # CapM - 2 bytes: 0 1 (capture mode? = exposure mode?)
1800
+ # WBMD - 2 bytes: 0 0 (white balance?)
1801
+ Expc => { # (NC)
1802
+ Name => 'ExposureCompensation',
1803
+ Format => 'int16s',
1804
+ ValueConv => '$val / 3', # (guess)
1805
+ PrintConv => 'Image::ExifTool::Exif::PrintFraction($val)',
1806
+ },
1807
+ # Zone - 2 bytes: 0 2 (time zone? focus zone?)
1808
+ # FoMD - 2 bytes: 0 0 (focus mode?)
1809
+ # Shap - 2 bytes: 0 2 (sharpness?)
1810
+ Expo => {
1811
+ Name => 'ExposureTime',
1812
+ Format => 'rational32u',
1813
+ PrintConv => 'Image::ExifTool::Exif::PrintExposureTime($val)',
1814
+ },
1815
+ FNum => {
1816
+ Name => 'FNumber',
1817
+ Format => 'int16u',
1818
+ ValueConv => '$val / 100',
1819
+ PrintConv => 'Image::ExifTool::Exif::PrintFNumber($val)',
1820
+ },
1821
+ ISOS => { Name => 'ISO', Format => 'int16u' },
1822
+ StSV => {
1823
+ Name => 'ShutterSpeedValue',
1824
+ Format => 'int16s',
1825
+ ValueConv => 'abs($val)<100 ? 2**(-$val/3) : 0',
1826
+ PrintConv => 'Image::ExifTool::Exif::PrintExposureTime($val)',
1827
+ },
1828
+ AprV => {
1829
+ Name => 'ApertureValue',
1830
+ Format => 'int16s',
1831
+ ValueConv => '2 ** ($val / 2000)',
1832
+ PrintConv => 'sprintf("%.1f",$val)',
1833
+ },
1834
+ BrtV => { # (NC)
1835
+ Name => 'BrightnessValue',
1836
+ Format => 'int32s',
1837
+ ValueConv => '$val / 1000', # (guess)
1838
+ },
1839
+ FoLn => {
1840
+ Name => 'FocalLength',
1841
+ Groups => { 2 => 'Camera' },
1842
+ Format => 'int16u',
1843
+ PrintConv => 'sprintf("%.1f mm",$val)',
1844
+ },
1845
+ FL35 => {
1846
+ Name => 'FocalLengthIn35mmFormat',
1847
+ Groups => { 2 => 'Camera' },
1848
+ Format => 'int16u',
1849
+ PrintConv => '"$val mm"',
1850
+ },
1851
+ Scrn => {
1852
+ Name => 'PreviewInfo',
1853
+ SubDirectory => { TagTable => 'Image::ExifTool::Kodak::Scrn' },
1854
+ },
1855
+ );
1856
+
1857
+ # tags in "frea" atom of Kodak PixPro SP360 MP4 videos (ref PH)
1858
+ %Image::ExifTool::Kodak::frea = (
1859
+ GROUPS => { 0 => 'MakerNotes', 2 => 'Image' },
1860
+ NOTES => 'Information stored in the "frea" atom of Kodak PixPro SP360 MP4 videos.',
1861
+ # tima - 4 bytes: "0 0 0 0x20" or "0 0 0 0x0a"
1862
+ thma => { Name => 'ThumbnailImage', Groups => { 2 => 'Preview' }, Binary => 1 },
1863
+ scra => { Name => 'PreviewImage', Groups => { 2 => 'Preview' }, Binary => 1 },
1864
+ );
1865
+
1866
+ # preview information in free/Scrn atom of MP4 videos (ref PH)
1867
+ %Image::ExifTool::Kodak::Scrn = (
1868
+ GROUPS => { 0 => 'MakerNotes', 2 => 'Image' },
1869
+ PROCESS_PROC => \&Image::ExifTool::ProcessBinaryData,
1870
+ FORMAT => 'int16u',
1871
+ 0 => 'PreviewImageWidth',
1872
+ 1 => 'PreviewImageHeight',
1873
+ 2 => { Name => 'PreviewImageLength', Format => 'int32u' },
1874
+ 4 => {
1875
+ Name => 'PreviewImage',
1876
+ Groups => { 2 => 'Preview' },
1877
+ Format => 'undef[$val{2}]',
1878
+ RawConv => '$self->ValidateImage(\$val, $tag)',
1879
+ },
1880
+ );
1881
+
1882
+ # Kodak composite tags
1883
+ %Image::ExifTool::Kodak::Composite = (
1884
+ GROUPS => { 2 => 'Camera' },
1885
+ DateCreated => {
1886
+ Groups => { 2 => 'Time' },
1887
+ Require => {
1888
+ 0 => 'Kodak:YearCreated',
1889
+ 1 => 'Kodak:MonthDayCreated',
1890
+ },
1891
+ ValueConv => '"$val[0]:$val[1]"',
1892
+ },
1893
+ WB_RGBLevels => {
1894
+ Require => {
1895
+ 0 => 'KDC_IFD:WhiteBalance',
1896
+ },
1897
+ # indices of the following entries are KDC_IFD:WhiteBalance + 1
1898
+ Desire => {
1899
+ 1 => 'WB_RGBLevelsAuto',
1900
+ 2 => 'WB_RGBLevelsFluorescent',
1901
+ 3 => 'WB_RGBLevelsTungsten',
1902
+ 4 => 'WB_RGBLevelsDaylight',
1903
+ 5 => 'WB_RGBLevels4',
1904
+ 6 => 'WB_RGBLevels5',
1905
+ 7 => 'WB_RGBLevelsShade',
1906
+ },
1907
+ ValueConv => '$val[$val[0] + 1]',
1908
+ },
1909
+ WB_RGBLevels2 => {
1910
+ Name => 'WB_RGBLevels',
1911
+ Require => {
1912
+ 0 => 'KodakIFD:WhiteBalance',
1913
+ 1 => 'WB_RGBMul0',
1914
+ 2 => 'WB_RGBMul1',
1915
+ 3 => 'WB_RGBMul2',
1916
+ 4 => 'WB_RGBMul3',
1917
+ 5 => 'WB_RGBCoeffs0',
1918
+ 6 => 'WB_RGBCoeffs1',
1919
+ 7 => 'WB_RGBCoeffs2',
1920
+ 8 => 'WB_RGBCoeffs3',
1921
+ },
1922
+ # indices of the following entries are KDC_IFD:WhiteBalance + 1
1923
+ Desire => {
1924
+ 9 => 'KodakIFD:ColorTemperature',
1925
+ 10 => 'Kodak:WB_RGBLevels',
1926
+ },
1927
+ ValueConv => 'Image::ExifTool::Kodak::CalculateRGBLevels(@val)',
1928
+ },
1929
+ );
1930
+
1931
+ # add our composite tags
1932
+ Image::ExifTool::AddCompositeTags('Image::ExifTool::Kodak');
1933
+
1934
+ #------------------------------------------------------------------------------
1935
+ # Calculate RGB levels from associated tags (ref 3)
1936
+ # Inputs: 0) KodakIFD:WhiteBalance, 1-4) WB_RGBMul0-3, 5-8) WB_RGBCoeffs0-3
1937
+ # 9) (optional) KodakIFD:ColorTemperature, 10) (optional) Kodak:WB_RGBLevels
1938
+ # Returns: WB_RGBLevels or undef
1939
+ sub CalculateRGBLevels(@)
1940
+ {
1941
+ return undef if $_[10]; # use existing software levels if they exist
1942
+ my $wbi = $_[0];
1943
+ return undef if $wbi < 0 or $wbi > 3;
1944
+ my @mul = split ' ', $_[$wbi + 1], 13; # (only use the first 12 coeffs)
1945
+ my @coefs = split ' ', ${$_[$wbi + 5]}; # (extra de-reference for Binary data)
1946
+ my $wbtemp100 = ($_[9] || 6500) / 100;
1947
+ return undef unless @mul >= 3 and @coefs >= 12;
1948
+ my ($i, $c, $n, $num, @cam_mul);
1949
+ for ($c=$n=0; $c<3; ++$c) {
1950
+ for ($num=$i=0; $i<4; ++$i) {
1951
+ $num += $coefs[$n++] * ($wbtemp100 ** $i);
1952
+ }
1953
+ $cam_mul[$c] = 2048 / ($num * $mul[$c]);
1954
+ }
1955
+ return join(' ', @cam_mul);
1956
+ }
1957
+
1958
+ #------------------------------------------------------------------------------
1959
+ # Process Kodak textual TextualInfo
1960
+ # Inputs: 0) ExifTool object ref, 1) dirInfo hash ref, 2) tag table ref
1961
+ # Returns: 1 on success
1962
+ sub ProcessKodakText($$$)
1963
+ {
1964
+ my ($et, $dirInfo, $tagTablePtr) = @_;
1965
+ my $dataPt = $$dirInfo{DataPt};
1966
+ my $dirStart = $$dirInfo{DirStart} || 0;
1967
+ my $dirLen = $$dirInfo{DirLen} || length($$dataPt) - $dirStart;
1968
+ my $data = substr($$dataPt, $dirStart, $dirLen);
1969
+ $data =~ s/\0.*//s; # truncate at null if it exists
1970
+ my @lines = split /[\n\r]+/, $data;
1971
+ my ($line, $success, @other, $tagInfo);
1972
+ $et->VerboseDir('Kodak Text');
1973
+ foreach $line (@lines) {
1974
+ if ($line =~ /(.*?):\s*(.*)/) {
1975
+ my ($tag, $val) = ($1, $2);
1976
+ if ($$tagTablePtr{$tag}) {
1977
+ $tagInfo = $et->GetTagInfo($tagTablePtr, $tag);
1978
+ } else {
1979
+ my $tagName = $tag;
1980
+ $tagName =~ s/([A-Z])\s+([A-Za-z])/${1}_\U$2/g;
1981
+ $tagName =~ s/([a-z])\s+([A-Za-z0-9])/${1}\U$2/g;
1982
+ $tagName =~ s/\s+//g;
1983
+ $tagName =~ s/[^-\w]+//g; # delete remaining invalid characters
1984
+ $tagName = 'NoName' unless $tagName;
1985
+ $tagInfo = { Name => $tagName };
1986
+ AddTagToTable($tagTablePtr, $tag, $tagInfo);
1987
+ }
1988
+ $et->HandleTag($tagTablePtr, $tag, $val, TagInfo => $tagInfo);
1989
+ $success = 1;
1990
+ } else {
1991
+ # strip off leading/trailing white space and ignore blank lines
1992
+ push @other, $1 if $line =~ /^\s*(\S.*?)\s*$/;
1993
+ }
1994
+ }
1995
+ if ($success) {
1996
+ if (@other) {
1997
+ $tagInfo = $et->GetTagInfo($tagTablePtr, '_other_info');
1998
+ $et->FoundTag($tagInfo, \@other);
1999
+ }
2000
+ } else {
2001
+ $et->Warn("Can't parse Kodak TextualInfo data", 1);
2002
+ }
2003
+ return $success;
2004
+ }
2005
+
2006
+ #------------------------------------------------------------------------------
2007
+ # Process Kodak IFD (with leading byte order mark)
2008
+ # Inputs: 0) ExifTool object ref, 1) dirInfo hash ref, 2) tag table ref
2009
+ # Returns: 1 on success, otherwise returns 0 and sets a Warning
2010
+ sub ProcessKodakIFD($$$)
2011
+ {
2012
+ my ($et, $dirInfo, $tagTablePtr) = @_;
2013
+ my $dirStart = $$dirInfo{DirStart} || 0;
2014
+ return 1 if $dirStart <= 0 or $dirStart + 2 > $$dirInfo{DataLen};
2015
+ my $byteOrder = substr(${$$dirInfo{DataPt}}, $dirStart, 2);
2016
+ unless (Image::ExifTool::SetByteOrder($byteOrder)) {
2017
+ $et->Warn("Invalid Kodak $$dirInfo{Name} directory");
2018
+ return 1;
2019
+ }
2020
+ $$dirInfo{DirStart} += 2; # skip byte order mark
2021
+ $$dirInfo{DirLen} -= 2;
2022
+ if ($$et{HTML_DUMP}) {
2023
+ my $base = $$dirInfo{Base} + $$dirInfo{DataPos};
2024
+ $et->HDump($dirStart+$base, 2, "Byte Order Mark");
2025
+ }
2026
+ return Image::ExifTool::Exif::ProcessExif($et, $dirInfo, $tagTablePtr);
2027
+ }
2028
+
2029
+ #------------------------------------------------------------------------------
2030
+ # Write Kodak IFD (with leading byte order mark)
2031
+ # Inputs: 0) ExifTool object ref, 1) source dirInfo ref, 2) tag table ref
2032
+ # Returns: Exif data block (may be empty if no Exif data) or undef on error
2033
+ sub WriteKodakIFD($$$)
2034
+ {
2035
+ my ($et, $dirInfo, $tagTablePtr) = @_;
2036
+ my $dirStart = $$dirInfo{DirStart} || 0;
2037
+ return '' if $dirStart <= 0 or $dirStart + 2 > $$dirInfo{DataLen};
2038
+ my $byteOrder = substr(${$$dirInfo{DataPt}}, $dirStart, 2);
2039
+ return '' unless Image::ExifTool::SetByteOrder($byteOrder);
2040
+ $$dirInfo{DirStart} += 2; # skip byte order mark
2041
+ $$dirInfo{DirLen} -= 2;
2042
+ my $buff = Image::ExifTool::Exif::WriteExif($et, $dirInfo, $tagTablePtr);
2043
+ return $buff unless defined $buff and length $buff;
2044
+ # apply one-time fixup for length of byte order mark
2045
+ if ($$dirInfo{Fixup}) {
2046
+ $dirInfo->{Fixup}->{Shift} += 2;
2047
+ $$dirInfo{Fixup}->ApplyFixup(\$buff);
2048
+ delete $$dirInfo{Fixup};
2049
+ }
2050
+ return Image::ExifTool::GetByteOrder() . $buff;
2051
+ }
2052
+
2053
+ 1; # end
2054
+
2055
+ __END__
2056
+
2057
+ =head1 NAME
2058
+
2059
+ Image::ExifTool::Kodak - Kodak EXIF maker notes and APP3 "Meta" tags
2060
+
2061
+ =head1 SYNOPSIS
2062
+
2063
+ This module is loaded automatically by Image::ExifTool when required.
2064
+
2065
+ =head1 DESCRIPTION
2066
+
2067
+ This module contains definitions required by Image::ExifTool to
2068
+ interpret Kodak maker notes EXIF meta information.
2069
+
2070
+ =head1 AUTHOR
2071
+
2072
+ Copyright 2003-2017, Phil Harvey (phil at owl.phy.queensu.ca)
2073
+
2074
+ This library is free software; you can redistribute it and/or modify it
2075
+ under the same terms as Perl itself.
2076
+
2077
+ =head1 REFERENCES
2078
+
2079
+ =over 4
2080
+
2081
+ =item L<Image::MetaData::JPEG|Image::MetaData::JPEG>
2082
+
2083
+ =item L<http://www.ozhiker.com/electronics/pjmt/jpeg_info/meta.html>
2084
+
2085
+ =item L<http://www.cybercom.net/~dcoffin/dcraw/>
2086
+
2087
+ =item (...plus lots of testing with my daughter's CX4200!)
2088
+
2089
+ =back
2090
+
2091
+ =head1 SEE ALSO
2092
+
2093
+ L<Image::ExifTool::TagNames/Kodak Tags>,
2094
+ L<Image::ExifTool(3pm)|Image::ExifTool>
2095
+
2096
+ =cut