exiftool_vendored 10.43.0 → 10.49.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 (1167) hide show
  1. checksums.yaml +4 -4
  2. data/bin/Image-ExifTool-10.49/Changes +7805 -0
  3. data/bin/Image-ExifTool-10.49/MANIFEST +1009 -0
  4. data/bin/Image-ExifTool-10.49/META.json +51 -0
  5. data/bin/Image-ExifTool-10.49/META.yml +31 -0
  6. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/Makefile.PL +0 -0
  7. data/bin/Image-ExifTool-10.49/README +241 -0
  8. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/arg_files/exif2iptc.args +0 -0
  9. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/arg_files/exif2xmp.args +0 -0
  10. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/arg_files/gps2xmp.args +0 -0
  11. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/arg_files/iptc2exif.args +0 -0
  12. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/arg_files/iptc2xmp.args +0 -0
  13. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/arg_files/iptcCore.args +0 -0
  14. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/arg_files/pdf2xmp.args +0 -0
  15. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/arg_files/xmp2exif.args +0 -0
  16. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/arg_files/xmp2gps.args +0 -0
  17. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/arg_files/xmp2iptc.args +0 -0
  18. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/arg_files/xmp2pdf.args +0 -0
  19. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/config_files/age.config +0 -0
  20. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/config_files/bibble.config +0 -0
  21. data/bin/Image-ExifTool-10.49/config_files/convert_regions.config +89 -0
  22. data/bin/Image-ExifTool-10.49/config_files/example.config +344 -0
  23. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/config_files/fotoware.config +0 -0
  24. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/config_files/gps2utm.config +0 -0
  25. data/bin/Image-ExifTool-10.49/config_files/photoshop_paths.config +168 -0
  26. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/config_files/picasa_faces.config +0 -0
  27. data/bin/Image-ExifTool-10.49/config_files/time_zone.config +96 -0
  28. data/bin/Image-ExifTool-10.49/exiftool +6522 -0
  29. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/fmt_files/gpx.fmt +0 -0
  30. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/fmt_files/gpx_wpt.fmt +0 -0
  31. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/fmt_files/kml.fmt +0 -0
  32. data/bin/Image-ExifTool-10.49/html/ExifTool.html +2140 -0
  33. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/html/MIE1.1-20070121.pdf +0 -0
  34. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/html/Shift.html +0 -0
  35. data/bin/Image-ExifTool-10.49/html/TagNames/AFCP.html +53 -0
  36. data/bin/Image-ExifTool-10.49/html/TagNames/AIFF.html +146 -0
  37. data/bin/Image-ExifTool-10.49/html/TagNames/APE.html +149 -0
  38. data/bin/Image-ExifTool-10.49/html/TagNames/APP12.html +188 -0
  39. data/bin/Image-ExifTool-10.49/html/TagNames/ASF.html +1066 -0
  40. data/bin/Image-ExifTool-10.49/html/TagNames/Apple.html +86 -0
  41. data/bin/Image-ExifTool-10.49/html/TagNames/Audible.html +177 -0
  42. data/bin/Image-ExifTool-10.49/html/TagNames/BMP.html +233 -0
  43. data/bin/Image-ExifTool-10.49/html/TagNames/BPG.html +118 -0
  44. data/bin/Image-ExifTool-10.49/html/TagNames/Canon.html +9754 -0
  45. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/html/TagNames/CanonCustom.html +0 -0
  46. data/bin/Image-ExifTool-10.49/html/TagNames/CanonRaw.html +561 -0
  47. data/bin/Image-ExifTool-10.49/html/TagNames/CanonVRD.html +2020 -0
  48. data/bin/Image-ExifTool-10.49/html/TagNames/Casio.html +1606 -0
  49. data/bin/Image-ExifTool-10.49/html/TagNames/Composite.html +745 -0
  50. data/bin/Image-ExifTool-10.49/html/TagNames/DICOM.html +15762 -0
  51. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/html/TagNames/DJI.html +0 -0
  52. data/bin/Image-ExifTool-10.49/html/TagNames/DNG.html +295 -0
  53. data/bin/Image-ExifTool-10.49/html/TagNames/DPX.html +229 -0
  54. data/bin/Image-ExifTool-10.49/html/TagNames/DV.html +75 -0
  55. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/html/TagNames/DarwinCore.html +0 -0
  56. data/bin/Image-ExifTool-10.49/html/TagNames/DjVu.html +313 -0
  57. data/bin/Image-ExifTool-10.49/html/TagNames/EXE.html +741 -0
  58. data/bin/Image-ExifTool-10.49/html/TagNames/EXIF.html +3493 -0
  59. data/bin/Image-ExifTool-10.49/html/TagNames/Extra.html +475 -0
  60. data/bin/Image-ExifTool-10.49/html/TagNames/FLAC.html +183 -0
  61. data/bin/Image-ExifTool-10.49/html/TagNames/FLIF.html +84 -0
  62. data/bin/Image-ExifTool-10.49/html/TagNames/FLIR.html +1340 -0
  63. data/bin/Image-ExifTool-10.49/html/TagNames/Flash.html +419 -0
  64. data/bin/Image-ExifTool-10.49/html/TagNames/FlashPix.html +1475 -0
  65. data/bin/Image-ExifTool-10.49/html/TagNames/Font.html +485 -0
  66. data/bin/Image-ExifTool-10.49/html/TagNames/FotoStation.html +103 -0
  67. data/bin/Image-ExifTool-10.49/html/TagNames/FujiFilm.html +876 -0
  68. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/html/TagNames/GE.html +0 -0
  69. data/bin/Image-ExifTool-10.49/html/TagNames/GIF.html +116 -0
  70. data/bin/Image-ExifTool-10.49/html/TagNames/GIMP.html +140 -0
  71. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/html/TagNames/GPS.html +0 -0
  72. data/bin/Image-ExifTool-10.49/html/TagNames/GeoTiff.html +2298 -0
  73. data/bin/Image-ExifTool-10.49/html/TagNames/H264.html +393 -0
  74. data/bin/Image-ExifTool-10.49/html/TagNames/HP.html +155 -0
  75. data/bin/Image-ExifTool-10.49/html/TagNames/HTML.html +666 -0
  76. data/bin/Image-ExifTool-10.49/html/TagNames/ICC_Profile.html +711 -0
  77. data/bin/Image-ExifTool-10.49/html/TagNames/ID3.html +1593 -0
  78. data/bin/Image-ExifTool-10.49/html/TagNames/IPTC.html +903 -0
  79. data/bin/Image-ExifTool-10.49/html/TagNames/ISO.html +159 -0
  80. data/bin/Image-ExifTool-10.49/html/TagNames/ITC.html +90 -0
  81. data/bin/Image-ExifTool-10.49/html/TagNames/JFIF.html +62 -0
  82. data/bin/Image-ExifTool-10.49/html/TagNames/JPEG.html +602 -0
  83. data/bin/Image-ExifTool-10.49/html/TagNames/JSON.html +25 -0
  84. data/bin/Image-ExifTool-10.49/html/TagNames/JVC.html +56 -0
  85. data/bin/Image-ExifTool-10.49/html/TagNames/Jpeg2000.html +466 -0
  86. data/bin/Image-ExifTool-10.49/html/TagNames/Kodak.html +1891 -0
  87. data/bin/Image-ExifTool-10.49/html/TagNames/KyoceraRaw.html +92 -0
  88. data/bin/Image-ExifTool-10.49/html/TagNames/LNK.html +478 -0
  89. data/bin/Image-ExifTool-10.49/html/TagNames/Leaf.html +871 -0
  90. data/bin/Image-ExifTool-10.49/html/TagNames/Lytro.html +122 -0
  91. data/bin/Image-ExifTool-10.49/html/TagNames/M2TS.html +133 -0
  92. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/html/TagNames/MIE.html +0 -0
  93. data/bin/Image-ExifTool-10.49/html/TagNames/MIFF.html +196 -0
  94. data/bin/Image-ExifTool-10.49/html/TagNames/MNG.html +847 -0
  95. data/bin/Image-ExifTool-10.49/html/TagNames/MOI.html +60 -0
  96. data/bin/Image-ExifTool-10.49/html/TagNames/MPC.html +97 -0
  97. data/bin/Image-ExifTool-10.49/html/TagNames/MPEG.html +249 -0
  98. data/bin/Image-ExifTool-10.49/html/TagNames/MPF.html +199 -0
  99. data/bin/Image-ExifTool-10.49/html/TagNames/MWG.html +584 -0
  100. data/bin/Image-ExifTool-10.49/html/TagNames/MXF.html +6673 -0
  101. data/bin/Image-ExifTool-10.49/html/TagNames/MacOS.html +400 -0
  102. data/bin/Image-ExifTool-10.49/html/TagNames/Matroska.html +1114 -0
  103. data/bin/Image-ExifTool-10.49/html/TagNames/Microsoft.html +2126 -0
  104. data/bin/Image-ExifTool-10.49/html/TagNames/Minolta.html +2640 -0
  105. data/bin/Image-ExifTool-10.49/html/TagNames/MinoltaRaw.html +326 -0
  106. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/html/TagNames/Motorola.html +0 -0
  107. data/bin/Image-ExifTool-10.49/html/TagNames/Nikon.html +6018 -0
  108. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/html/TagNames/NikonCapture.html +0 -0
  109. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/html/TagNames/NikonCustom.html +0 -0
  110. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/html/TagNames/Nintendo.html +0 -0
  111. data/bin/Image-ExifTool-10.49/html/TagNames/OOXML.html +280 -0
  112. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/html/TagNames/Ogg.html +0 -0
  113. data/bin/Image-ExifTool-10.49/html/TagNames/Olympus.html +3655 -0
  114. data/bin/Image-ExifTool-10.49/html/TagNames/OpenEXR.html +222 -0
  115. data/bin/Image-ExifTool-10.49/html/TagNames/Opus.html +62 -0
  116. data/bin/Image-ExifTool-10.49/html/TagNames/PDF.html +745 -0
  117. data/bin/Image-ExifTool-10.49/html/TagNames/PGF.html +80 -0
  118. data/bin/Image-ExifTool-10.49/html/TagNames/PICT.html +753 -0
  119. data/bin/Image-ExifTool-10.49/html/TagNames/PLIST.html +86 -0
  120. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/html/TagNames/PLUS.html +0 -0
  121. data/bin/Image-ExifTool-10.49/html/TagNames/PNG.html +578 -0
  122. data/bin/Image-ExifTool-10.49/html/TagNames/PSP.html +160 -0
  123. data/bin/Image-ExifTool-10.49/html/TagNames/Palm.html +388 -0
  124. data/bin/Image-ExifTool-10.49/html/TagNames/Panasonic.html +1706 -0
  125. data/bin/Image-ExifTool-10.49/html/TagNames/PanasonicRaw.html +471 -0
  126. data/bin/Image-ExifTool-10.49/html/TagNames/Pentax.html +4845 -0
  127. data/bin/Image-ExifTool-10.49/html/TagNames/PhaseOne.html +263 -0
  128. data/bin/Image-ExifTool-10.49/html/TagNames/PhotoCD.html +402 -0
  129. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/html/TagNames/PhotoMechanic.html +0 -0
  130. data/bin/Image-ExifTool-10.49/html/TagNames/Photoshop.html +739 -0
  131. data/bin/Image-ExifTool-10.49/html/TagNames/PostScript.html +125 -0
  132. data/bin/Image-ExifTool-10.49/html/TagNames/PrintIM.html +31 -0
  133. data/bin/Image-ExifTool-10.49/html/TagNames/Qualcomm.html +4778 -0
  134. data/bin/Image-ExifTool-10.49/html/TagNames/QuickTime.html +6252 -0
  135. data/bin/Image-ExifTool-10.49/html/TagNames/RIFF.html +1382 -0
  136. data/bin/Image-ExifTool-10.49/html/TagNames/RSRC.html +74 -0
  137. data/bin/Image-ExifTool-10.49/html/TagNames/RTF.html +150 -0
  138. data/bin/Image-ExifTool-10.49/html/TagNames/Radiance.html +87 -0
  139. data/bin/Image-ExifTool-10.49/html/TagNames/Rawzor.html +45 -0
  140. data/bin/Image-ExifTool-10.49/html/TagNames/Real.html +780 -0
  141. data/bin/Image-ExifTool-10.49/html/TagNames/Reconyx.html +132 -0
  142. data/bin/Image-ExifTool-10.49/html/TagNames/Ricoh.html +805 -0
  143. data/bin/Image-ExifTool-10.49/html/TagNames/Samsung.html +682 -0
  144. data/bin/Image-ExifTool-10.49/html/TagNames/Sanyo.html +366 -0
  145. data/bin/Image-ExifTool-10.49/html/TagNames/Scalado.html +45 -0
  146. data/bin/Image-ExifTool-10.49/html/TagNames/Shortcuts.html +280 -0
  147. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/html/TagNames/Sigma.html +0 -0
  148. data/bin/Image-ExifTool-10.49/html/TagNames/SigmaRaw.html +438 -0
  149. data/bin/Image-ExifTool-10.49/html/TagNames/Sony.html +10348 -0
  150. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/html/TagNames/SonyIDC.html +0 -0
  151. data/bin/Image-ExifTool-10.49/html/TagNames/Stim.html +200 -0
  152. data/bin/Image-ExifTool-10.49/html/TagNames/Theora.html +102 -0
  153. data/bin/Image-ExifTool-10.49/html/TagNames/Torrent.html +187 -0
  154. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/html/TagNames/Unknown.html +0 -0
  155. data/bin/Image-ExifTool-10.49/html/TagNames/VCard.html +433 -0
  156. data/bin/Image-ExifTool-10.49/html/TagNames/Vorbis.html +243 -0
  157. data/bin/Image-ExifTool-10.49/html/TagNames/XMP.html +10158 -0
  158. data/bin/Image-ExifTool-10.49/html/TagNames/ZIP.html +205 -0
  159. data/bin/Image-ExifTool-10.49/html/TagNames/iWork.html +49 -0
  160. data/bin/Image-ExifTool-10.49/html/TagNames/index.html +220 -0
  161. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/html/TagNames/style.css +0 -0
  162. data/bin/Image-ExifTool-10.49/html/ancient_history.html +8365 -0
  163. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/html/canon_raw.html +0 -0
  164. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/html/commentary.html +0 -0
  165. data/bin/Image-ExifTool-10.49/html/config.html +356 -0
  166. data/bin/Image-ExifTool-10.49/html/data_members.html +293 -0
  167. data/bin/Image-ExifTool-10.49/html/exiftool_pod.html +1887 -0
  168. data/bin/Image-ExifTool-10.49/html/faq.html +1597 -0
  169. data/bin/Image-ExifTool-10.49/html/filename.html +352 -0
  170. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/html/geotag.html +0 -0
  171. data/bin/Image-ExifTool-10.49/html/history.html +446 -0
  172. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/html/htmldump.html +0 -0
  173. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/html/idiosyncracies.html +0 -0
  174. data/bin/Image-ExifTool-10.49/html/index.html +1370 -0
  175. data/bin/Image-ExifTool-10.49/html/install.html +261 -0
  176. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/html/metafiles.html +0 -0
  177. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/html/overview.png +0 -0
  178. data/bin/Image-ExifTool-10.49/html/standards.html +294 -0
  179. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/html/struct.html +0 -0
  180. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/html/style.css +0 -0
  181. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/html/under.html +0 -0
  182. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/html/verbose.html +0 -0
  183. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/html/writing.html +0 -0
  184. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/File/RandomAccess.pm +0 -0
  185. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/File/RandomAccess.pod +0 -0
  186. data/bin/Image-ExifTool-10.49/lib/Image/ExifTool.pm +7799 -0
  187. data/bin/Image-ExifTool-10.49/lib/Image/ExifTool.pod +2593 -0
  188. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/AES.pm +0 -0
  189. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/AFCP.pm +0 -0
  190. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/AIFF.pm +0 -0
  191. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/APE.pm +0 -0
  192. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/APP12.pm +0 -0
  193. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/ASF.pm +0 -0
  194. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Apple.pm +0 -0
  195. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Audible.pm +0 -0
  196. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/BMP.pm +0 -0
  197. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/BPG.pm +0 -0
  198. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/BZZ.pm +0 -0
  199. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/BigTIFF.pm +0 -0
  200. data/bin/Image-ExifTool-10.49/lib/Image/ExifTool/BuildTagLookup.pm +2561 -0
  201. data/bin/Image-ExifTool-10.49/lib/Image/ExifTool/Canon.pm +8937 -0
  202. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/CanonCustom.pm +0 -0
  203. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/CanonRaw.pm +0 -0
  204. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/CanonVRD.pm +0 -0
  205. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/CaptureOne.pm +0 -0
  206. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Casio.pm +0 -0
  207. data/bin/Image-ExifTool-10.49/lib/Image/ExifTool/Charset.pm +428 -0
  208. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Charset/Arabic.pm +0 -0
  209. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Charset/Baltic.pm +0 -0
  210. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Charset/Cyrillic.pm +0 -0
  211. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Charset/Greek.pm +0 -0
  212. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Charset/Hebrew.pm +0 -0
  213. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Charset/JIS.pm +0 -0
  214. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Charset/Latin.pm +0 -0
  215. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Charset/Latin2.pm +0 -0
  216. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Charset/MacArabic.pm +0 -0
  217. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Charset/MacChineseCN.pm +0 -0
  218. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Charset/MacChineseTW.pm +0 -0
  219. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Charset/MacCroatian.pm +0 -0
  220. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Charset/MacCyrillic.pm +0 -0
  221. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Charset/MacGreek.pm +0 -0
  222. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Charset/MacHebrew.pm +0 -0
  223. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Charset/MacIceland.pm +0 -0
  224. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Charset/MacJapanese.pm +0 -0
  225. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Charset/MacKorean.pm +0 -0
  226. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Charset/MacLatin2.pm +0 -0
  227. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Charset/MacRSymbol.pm +0 -0
  228. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Charset/MacRoman.pm +0 -0
  229. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Charset/MacRomanian.pm +0 -0
  230. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Charset/MacThai.pm +0 -0
  231. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Charset/MacTurkish.pm +0 -0
  232. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Charset/PDFDoc.pm +0 -0
  233. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Charset/ShiftJIS.pm +0 -0
  234. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Charset/Symbol.pm +0 -0
  235. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Charset/Thai.pm +0 -0
  236. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Charset/Turkish.pm +0 -0
  237. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Charset/Vietnam.pm +0 -0
  238. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/DICOM.pm +0 -0
  239. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/DJI.pm +0 -0
  240. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/DNG.pm +0 -0
  241. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/DPX.pm +0 -0
  242. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/DV.pm +0 -0
  243. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/DarwinCore.pm +0 -0
  244. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/DjVu.pm +0 -0
  245. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/EXE.pm +0 -0
  246. data/bin/Image-ExifTool-10.49/lib/Image/ExifTool/Exif.pm +6144 -0
  247. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/FLAC.pm +0 -0
  248. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/FLIF.pm +0 -0
  249. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/FLIR.pm +0 -0
  250. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Fixup.pm +0 -0
  251. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Flash.pm +0 -0
  252. data/bin/Image-ExifTool-10.49/lib/Image/ExifTool/FlashPix.pm +1971 -0
  253. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Font.pm +0 -0
  254. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/FotoStation.pm +0 -0
  255. data/bin/Image-ExifTool-10.49/lib/Image/ExifTool/FujiFilm.pm +1272 -0
  256. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/GE.pm +0 -0
  257. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/GIF.pm +0 -0
  258. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/GIMP.pm +0 -0
  259. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/GPS.pm +0 -0
  260. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/GeoTiff.pm +0 -0
  261. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Geotag.pm +0 -0
  262. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/H264.pm +0 -0
  263. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/HP.pm +0 -0
  264. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/HTML.pm +0 -0
  265. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/HtmlDump.pm +0 -0
  266. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/ICC_Profile.pm +0 -0
  267. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/ID3.pm +0 -0
  268. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/IPTC.pm +0 -0
  269. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/ISO.pm +0 -0
  270. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/ITC.pm +0 -0
  271. data/bin/Image-ExifTool-10.49/lib/Image/ExifTool/Import.pm +340 -0
  272. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/InDesign.pm +0 -0
  273. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/JPEG.pm +0 -0
  274. data/bin/Image-ExifTool-10.49/lib/Image/ExifTool/JPEGDigest.pm +2617 -0
  275. data/bin/Image-ExifTool-10.49/lib/Image/ExifTool/JSON.pm +142 -0
  276. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/JVC.pm +0 -0
  277. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Jpeg2000.pm +0 -0
  278. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Kodak.pm +0 -0
  279. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/KyoceraRaw.pm +0 -0
  280. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/LNK.pm +0 -0
  281. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Lang/cs.pm +0 -0
  282. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Lang/de.pm +0 -0
  283. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Lang/en_ca.pm +0 -0
  284. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Lang/en_gb.pm +0 -0
  285. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Lang/es.pm +0 -0
  286. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Lang/fi.pm +0 -0
  287. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Lang/fr.pm +0 -0
  288. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Lang/it.pm +0 -0
  289. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Lang/ja.pm +0 -0
  290. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Lang/ko.pm +0 -0
  291. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Lang/nl.pm +0 -0
  292. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Lang/pl.pm +0 -0
  293. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Lang/ru.pm +0 -0
  294. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Lang/sv.pm +0 -0
  295. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Lang/tr.pm +0 -0
  296. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Lang/zh_cn.pm +0 -0
  297. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Lang/zh_tw.pm +0 -0
  298. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Leaf.pm +0 -0
  299. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Lytro.pm +0 -0
  300. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/M2TS.pm +0 -0
  301. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/MIE.pm +0 -0
  302. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/MIEUnits.pod +0 -0
  303. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/MIFF.pm +0 -0
  304. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/MNG.pm +0 -0
  305. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/MOI.pm +0 -0
  306. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/MPC.pm +0 -0
  307. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/MPEG.pm +0 -0
  308. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/MPF.pm +0 -0
  309. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/MWG.pm +0 -0
  310. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/MXF.pm +0 -0
  311. data/bin/Image-ExifTool-10.49/lib/Image/ExifTool/MacOS.pm +469 -0
  312. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/MakerNotes.pm +0 -0
  313. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Matroska.pm +0 -0
  314. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Microsoft.pm +0 -0
  315. data/bin/Image-ExifTool-10.49/lib/Image/ExifTool/Minolta.pm +3002 -0
  316. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/MinoltaRaw.pm +0 -0
  317. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Motorola.pm +0 -0
  318. data/bin/Image-ExifTool-10.49/lib/Image/ExifTool/Nikon.pm +8175 -0
  319. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/NikonCapture.pm +0 -0
  320. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/NikonCustom.pm +0 -0
  321. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Nintendo.pm +0 -0
  322. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/OOXML.pm +0 -0
  323. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Ogg.pm +0 -0
  324. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Olympus.pm +0 -0
  325. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/OpenEXR.pm +0 -0
  326. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Opus.pm +0 -0
  327. data/bin/Image-ExifTool-10.49/lib/Image/ExifTool/PDF.pm +2378 -0
  328. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/PGF.pm +0 -0
  329. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/PICT.pm +0 -0
  330. data/bin/Image-ExifTool-10.49/lib/Image/ExifTool/PLIST.pm +455 -0
  331. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/PLUS.pm +0 -0
  332. data/bin/Image-ExifTool-10.49/lib/Image/ExifTool/PNG.pm +1371 -0
  333. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/PPM.pm +0 -0
  334. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/PSP.pm +0 -0
  335. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Palm.pm +0 -0
  336. data/bin/Image-ExifTool-10.49/lib/Image/ExifTool/Panasonic.pm +2386 -0
  337. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/PanasonicRaw.pm +0 -0
  338. data/bin/Image-ExifTool-10.49/lib/Image/ExifTool/Pentax.pm +6200 -0
  339. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/PhaseOne.pm +0 -0
  340. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/PhotoCD.pm +0 -0
  341. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/PhotoMechanic.pm +0 -0
  342. data/bin/Image-ExifTool-10.49/lib/Image/ExifTool/Photoshop.pm +966 -0
  343. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/PostScript.pm +0 -0
  344. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/PrintIM.pm +0 -0
  345. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Qualcomm.pm +0 -0
  346. data/bin/Image-ExifTool-10.49/lib/Image/ExifTool/QuickTime.pm +6729 -0
  347. data/bin/Image-ExifTool-10.49/lib/Image/ExifTool/README +1032 -0
  348. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/RIFF.pm +0 -0
  349. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/RSRC.pm +0 -0
  350. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/RTF.pm +0 -0
  351. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Radiance.pm +0 -0
  352. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Rawzor.pm +0 -0
  353. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Real.pm +0 -0
  354. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Reconyx.pm +0 -0
  355. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Ricoh.pm +0 -0
  356. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Samsung.pm +0 -0
  357. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Sanyo.pm +0 -0
  358. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Scalado.pm +0 -0
  359. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Shift.pl +0 -0
  360. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Shortcuts.pm +0 -0
  361. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Sigma.pm +0 -0
  362. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/SigmaRaw.pm +0 -0
  363. data/bin/Image-ExifTool-10.49/lib/Image/ExifTool/Sony.pm +9827 -0
  364. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/SonyIDC.pm +0 -0
  365. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Stim.pm +0 -0
  366. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/TagInfoXML.pm +0 -0
  367. data/bin/Image-ExifTool-10.49/lib/Image/ExifTool/TagLookup.pm +9608 -0
  368. data/bin/Image-ExifTool-10.49/lib/Image/ExifTool/TagNames.pod +30849 -0
  369. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Theora.pm +0 -0
  370. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Torrent.pm +0 -0
  371. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Unknown.pm +0 -0
  372. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/VCard.pm +0 -0
  373. data/bin/Image-ExifTool-10.49/lib/Image/ExifTool/Validate.pm +320 -0
  374. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/Vorbis.pm +0 -0
  375. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/WriteCanonRaw.pl +0 -0
  376. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/WriteExif.pl +0 -0
  377. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/WriteIPTC.pl +0 -0
  378. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/WritePDF.pl +0 -0
  379. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/WritePNG.pl +0 -0
  380. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/WritePhotoshop.pl +0 -0
  381. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/WritePostScript.pl +0 -0
  382. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/WriteQuickTime.pl +0 -0
  383. data/bin/Image-ExifTool-10.49/lib/Image/ExifTool/WriteXMP.pl +1389 -0
  384. data/bin/Image-ExifTool-10.49/lib/Image/ExifTool/Writer.pl +6399 -0
  385. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/XMP.pm +0 -0
  386. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/XMP2.pl +0 -0
  387. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/XMPStruct.pl +0 -0
  388. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/ZIP.pm +0 -0
  389. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/lib/Image/ExifTool/iWork.pm +0 -0
  390. data/bin/Image-ExifTool-10.49/perl-Image-ExifTool.spec +113 -0
  391. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/AFCP.t +0 -0
  392. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/AFCP_2.out +0 -0
  393. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/AFCP_3.out +0 -0
  394. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/AIFF.t +0 -0
  395. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/AIFF_2.out +0 -0
  396. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/APE.t +0 -0
  397. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/APE_2.out +0 -0
  398. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/APE_3.out +0 -0
  399. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/ASF.t +0 -0
  400. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/ASF_2.out +0 -0
  401. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Apple.t +0 -0
  402. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Apple_2.out +0 -0
  403. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Audible.t +0 -0
  404. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Audible_2.out +0 -0
  405. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/BMP.t +0 -0
  406. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/BMP_2.out +0 -0
  407. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/BPG.t +0 -0
  408. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/BPG_2.out +0 -0
  409. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/BigTIFF.t +0 -0
  410. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/BigTIFF_2.out +0 -0
  411. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Canon.t +0 -0
  412. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/CanonRaw.t +0 -0
  413. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/CanonRaw_2.out +0 -0
  414. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/CanonRaw_4.out +0 -0
  415. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/CanonRaw_5.out +0 -0
  416. data/bin/Image-ExifTool-10.49/t/CanonRaw_6.out +234 -0
  417. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/CanonRaw_7.out +0 -0
  418. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/CanonVRD.t +0 -0
  419. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/CanonVRD_11.out +0 -0
  420. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/CanonVRD_12.out +0 -0
  421. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/CanonVRD_13.out +0 -0
  422. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/CanonVRD_14.out +0 -0
  423. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/CanonVRD_15.out +0 -0
  424. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/CanonVRD_16.out +0 -0
  425. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/CanonVRD_17.out +0 -0
  426. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/CanonVRD_18.out +0 -0
  427. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/CanonVRD_19.out +0 -0
  428. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/CanonVRD_2.out +0 -0
  429. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/CanonVRD_20.out +0 -0
  430. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/CanonVRD_21.out +0 -0
  431. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/CanonVRD_3.out +0 -0
  432. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/CanonVRD_4.out +0 -0
  433. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/CanonVRD_5.out +0 -0
  434. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/CanonVRD_6.out +0 -0
  435. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/CanonVRD_7.out +0 -0
  436. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/CanonVRD_8.out +0 -0
  437. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/CanonVRD_9.out +0 -0
  438. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Canon_2.out +0 -0
  439. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Canon_3.out +0 -0
  440. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Casio.t +0 -0
  441. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Casio_2.out +0 -0
  442. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Casio_3.out +0 -0
  443. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Casio_4.out +0 -0
  444. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Casio_5.out +0 -0
  445. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Casio_6.out +0 -0
  446. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/DICOM.t +0 -0
  447. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/DICOM_2.out +0 -0
  448. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/DNG.t +0 -0
  449. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/DNG_2.out +0 -0
  450. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/DNG_3.out +0 -0
  451. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/DPX.t +0 -0
  452. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/DPX_2.out +0 -0
  453. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/DV.t +0 -0
  454. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/DV_2.out +0 -0
  455. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/DjVu.t +0 -0
  456. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/DjVu_2.out +0 -0
  457. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/EXE.t +0 -0
  458. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/EXE_2.out +0 -0
  459. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/EXE_3.out +0 -0
  460. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/EXE_4.out +0 -0
  461. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/EXE_5.out +0 -0
  462. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/EXE_6.out +0 -0
  463. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/EXE_7.out +0 -0
  464. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/ExifTool.t +0 -0
  465. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/ExifTool_16.out +0 -0
  466. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/ExifTool_17.out +0 -0
  467. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/ExifTool_2.out +0 -0
  468. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/ExifTool_20.out +0 -0
  469. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/ExifTool_21.out +0 -0
  470. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/ExifTool_22.out +0 -0
  471. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/ExifTool_23.out +0 -0
  472. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/ExifTool_24.out +0 -0
  473. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/ExifTool_25.out +0 -0
  474. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/ExifTool_26.out +0 -0
  475. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/ExifTool_27.out +0 -0
  476. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/ExifTool_28.out +0 -0
  477. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/ExifTool_29.out +0 -0
  478. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/ExifTool_3.out +0 -0
  479. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/ExifTool_30.out +0 -0
  480. data/bin/Image-ExifTool-10.49/t/ExifTool_31.out +5 -0
  481. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/ExifTool_4.out +0 -0
  482. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/ExifTool_5.out +0 -0
  483. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/ExifTool_6.out +0 -0
  484. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/ExifTool_7.out +0 -0
  485. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/ExifTool_8.out +0 -0
  486. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/ExifTool_9.out +0 -0
  487. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/FLAC.t +0 -0
  488. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/FLAC_2.out +0 -0
  489. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/FLAC_3.out +0 -0
  490. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/FLIF.t +0 -0
  491. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/FLIF_2.out +0 -0
  492. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/FLIF_3.out +0 -0
  493. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/FLIF_4.out +0 -0
  494. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/FLIF_5.out +0 -0
  495. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/FLIF_6.out +0 -0
  496. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/FLIR.t +0 -0
  497. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/FLIR_2.out +0 -0
  498. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/FLIR_3.out +0 -0
  499. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Flash.t +0 -0
  500. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/FlashPix.t +0 -0
  501. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/FlashPix_2.out +0 -0
  502. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Flash_2.out +0 -0
  503. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Flash_3.out +0 -0
  504. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Font.t +0 -0
  505. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Font_2.out +0 -0
  506. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Font_3.out +0 -0
  507. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Font_4.out +0 -0
  508. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Font_5.out +0 -0
  509. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Font_6.out +0 -0
  510. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Font_7.out +0 -0
  511. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/FotoStation.t +0 -0
  512. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/FotoStation_2.out +0 -0
  513. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/FotoStation_3.out +0 -0
  514. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/FujiFilm.t +0 -0
  515. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/FujiFilm_2.out +0 -0
  516. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/FujiFilm_3.out +0 -0
  517. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/FujiFilm_4.out +0 -0
  518. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/FujiFilm_5.out +0 -0
  519. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/GE.t +0 -0
  520. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/GE_2.out +0 -0
  521. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/GE_3.out +0 -0
  522. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/GIF.t +0 -0
  523. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/GIF_2.out +0 -0
  524. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/GIF_3.out +0 -0
  525. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/GIF_4.out +0 -0
  526. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/GIMP.t +0 -0
  527. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/GIMP_2.out +0 -0
  528. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/GPS.t +0 -0
  529. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/GPS_2.out +0 -0
  530. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/GPS_3.out +0 -0
  531. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/GeoTiff.t +0 -0
  532. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/GeoTiff_2.out +0 -0
  533. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/GeoTiff_3.out +0 -0
  534. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/GeoTiff_4.out +0 -0
  535. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Geotag.t +0 -0
  536. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Geotag_10.out +0 -0
  537. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Geotag_11.out +0 -0
  538. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Geotag_2.out +0 -0
  539. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Geotag_3.out +0 -0
  540. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Geotag_5.out +0 -0
  541. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Geotag_6.out +0 -0
  542. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Geotag_7.out +0 -0
  543. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Geotag_8.out +0 -0
  544. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Geotag_9.out +0 -0
  545. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/HTML.t +0 -0
  546. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/HTML_2.out +0 -0
  547. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/IPTC.t +0 -0
  548. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/IPTC_2.out +0 -0
  549. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/IPTC_4.out +0 -0
  550. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/IPTC_5.out +0 -0
  551. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/IPTC_6.out +0 -0
  552. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/IPTC_7.out +0 -0
  553. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/IPTC_8.out +0 -0
  554. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/ISO.t +0 -0
  555. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/ISO_2.out +0 -0
  556. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/ITC.t +0 -0
  557. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/ITC_2.out +0 -0
  558. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/InDesign.t +0 -0
  559. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/InDesign_2.out +0 -0
  560. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/InDesign_3.out +0 -0
  561. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/InDesign_4.out +0 -0
  562. data/bin/Image-ExifTool-10.49/t/JSON.t +30 -0
  563. data/bin/Image-ExifTool-10.49/t/JSON_2.out +19 -0
  564. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/JVC.t +0 -0
  565. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/JVC_2.out +0 -0
  566. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/JVC_3.out +0 -0
  567. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Jpeg2000.t +0 -0
  568. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Jpeg2000_2.out +0 -0
  569. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Jpeg2000_3.out +0 -0
  570. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Jpeg2000_4.out +0 -0
  571. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Kodak.t +0 -0
  572. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Kodak_2.out +0 -0
  573. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Kodak_3.out +0 -0
  574. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/KyoceraRaw.t +0 -0
  575. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/KyoceraRaw_2.out +0 -0
  576. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/LNK.t +0 -0
  577. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/LNK_2.out +0 -0
  578. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Lang.t +0 -0
  579. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Lang_1.out +0 -0
  580. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Lang_10.out +0 -0
  581. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Lang_11.out +0 -0
  582. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Lang_12.out +0 -0
  583. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Lang_13.out +0 -0
  584. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Lang_14.out +0 -0
  585. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Lang_15.out +0 -0
  586. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Lang_16.out +0 -0
  587. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Lang_17.out +0 -0
  588. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Lang_18.out +0 -0
  589. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Lang_2.out +0 -0
  590. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Lang_3.out +0 -0
  591. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Lang_4.out +0 -0
  592. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Lang_5.out +0 -0
  593. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Lang_6.out +0 -0
  594. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Lang_7.out +0 -0
  595. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Lang_8.out +0 -0
  596. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Lang_9.out +0 -0
  597. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Lytro.t +0 -0
  598. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Lytro_2.out +0 -0
  599. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/M2TS.t +0 -0
  600. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/M2TS_2.out +0 -0
  601. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/MIE.t +0 -0
  602. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/MIE_2.out +0 -0
  603. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/MIE_3.out +0 -0
  604. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/MIE_5.out +0 -0
  605. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/MIE_6.out +0 -0
  606. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/MIFF.t +0 -0
  607. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/MIFF_2.out +0 -0
  608. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/MOI.t +0 -0
  609. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/MOI_2.out +0 -0
  610. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/MP3.t +0 -0
  611. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/MP3_2.out +0 -0
  612. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/MWG.t +0 -0
  613. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/MWG_2.out +0 -0
  614. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/MWG_3.out +0 -0
  615. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/MWG_4.out +0 -0
  616. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/MWG_5.out +0 -0
  617. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/MWG_6.out +0 -0
  618. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/MWG_7.out +0 -0
  619. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/MXF.t +0 -0
  620. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/MXF_2.out +0 -0
  621. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Matroska.t +0 -0
  622. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Matroska_2.out +0 -0
  623. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Minolta.t +0 -0
  624. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Minolta_2.out +0 -0
  625. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Minolta_3.out +0 -0
  626. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Minolta_4.out +0 -0
  627. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Motorola.t +0 -0
  628. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Motorola_2.out +0 -0
  629. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Nikon.t +0 -0
  630. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Nikon_2.out +0 -0
  631. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Nikon_3.out +0 -0
  632. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Nikon_4.out +0 -0
  633. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Nikon_5.out +0 -0
  634. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Nikon_7.out +0 -0
  635. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Nikon_8.out +0 -0
  636. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Olympus.t +0 -0
  637. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Olympus_2.out +0 -0
  638. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Olympus_3.out +0 -0
  639. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Olympus_4.out +0 -0
  640. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Olympus_5.out +0 -0
  641. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Olympus_6.out +0 -0
  642. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Olympus_7.out +0 -0
  643. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Olympus_8.out +0 -0
  644. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/OpenEXR.t +0 -0
  645. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/OpenEXR_2.out +0 -0
  646. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Opus.t +0 -0
  647. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Opus_2.out +0 -0
  648. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PDF.t +0 -0
  649. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PDF_10.out +0 -0
  650. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PDF_11.out +0 -0
  651. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PDF_12.out +0 -0
  652. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PDF_14.out +0 -0
  653. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PDF_15.out +0 -0
  654. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PDF_16.out +0 -0
  655. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PDF_17.out +0 -0
  656. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PDF_18.out +0 -0
  657. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PDF_19.out +0 -0
  658. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PDF_2.out +0 -0
  659. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PDF_20.out +0 -0
  660. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PDF_22.out +0 -0
  661. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PDF_4.out +0 -0
  662. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PDF_5.out +0 -0
  663. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PDF_6.out +0 -0
  664. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PDF_7.out +0 -0
  665. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PDF_8.out +0 -0
  666. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PDF_9.out +0 -0
  667. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PGF.t +0 -0
  668. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PGF_2.out +0 -0
  669. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PICT.t +0 -0
  670. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PICT_2.out +0 -0
  671. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PLIST.t +0 -0
  672. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PLIST_2.out +0 -0
  673. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PLIST_3.out +0 -0
  674. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PLUS.t +0 -0
  675. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PLUS_2.out +0 -0
  676. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PNG.t +0 -0
  677. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PNG_2.out +0 -0
  678. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PNG_3.out +0 -0
  679. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PNG_4.out +0 -0
  680. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PNG_5.out +0 -0
  681. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PNG_6.out +0 -0
  682. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PPM.t +0 -0
  683. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PPM_2.out +0 -0
  684. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PPM_3.out +0 -0
  685. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PSP.t +0 -0
  686. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PSP_2.out +0 -0
  687. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Palm.t +0 -0
  688. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Palm_2.out +0 -0
  689. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Panasonic.t +0 -0
  690. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Panasonic_2.out +0 -0
  691. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Panasonic_3.out +0 -0
  692. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Panasonic_4.out +0 -0
  693. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Panasonic_5.out +0 -0
  694. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Pentax.t +0 -0
  695. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Pentax_2.out +0 -0
  696. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Pentax_3.out +0 -0
  697. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Pentax_4.out +0 -0
  698. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PhaseOne.t +0 -0
  699. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PhaseOne_2.out +0 -0
  700. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PhaseOne_3.out +0 -0
  701. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PhotoCD.t +0 -0
  702. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PhotoCD_2.out +0 -0
  703. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PhotoMechanic.t +0 -0
  704. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PhotoMechanic_2.out +0 -0
  705. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PhotoMechanic_3.out +0 -0
  706. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Photoshop.t +0 -0
  707. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Photoshop_2.out +0 -0
  708. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Photoshop_3.out +0 -0
  709. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PostScript.t +0 -0
  710. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PostScript_2.out +0 -0
  711. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/PostScript_3.out +0 -0
  712. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/QuickTime.t +0 -0
  713. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/QuickTime_2.out +0 -0
  714. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/QuickTime_3.out +0 -0
  715. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/QuickTime_4.out +0 -0
  716. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/QuickTime_5.out +0 -0
  717. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/RIFF.t +0 -0
  718. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/RIFF_2.out +0 -0
  719. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/RIFF_3.out +0 -0
  720. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/RIFF_4.out +0 -0
  721. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/RTF.t +0 -0
  722. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/RTF_2.out +0 -0
  723. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Radiance.t +0 -0
  724. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Radiance_2.out +0 -0
  725. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Real.t +0 -0
  726. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Real_2.out +0 -0
  727. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Real_3.out +0 -0
  728. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Real_4.out +0 -0
  729. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Ricoh.t +0 -0
  730. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Ricoh_2.out +0 -0
  731. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Ricoh_3.out +0 -0
  732. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Ricoh_4.out +0 -0
  733. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Sanyo.t +0 -0
  734. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Sanyo_2.out +0 -0
  735. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Sanyo_3.out +0 -0
  736. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Sigma.t +0 -0
  737. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Sigma_2.out +0 -0
  738. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Sigma_3.out +0 -0
  739. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Sigma_4.out +0 -0
  740. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Sigma_5.out +0 -0
  741. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Sony.t +0 -0
  742. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Sony_2.out +0 -0
  743. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Sony_3.out +0 -0
  744. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Sony_5.out +0 -0
  745. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/TestLib.pm +0 -0
  746. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Torrent.t +0 -0
  747. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Torrent_2.out +0 -0
  748. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Unknown.t +0 -0
  749. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Unknown_2.out +0 -0
  750. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Unknown_3.out +0 -0
  751. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/VCard.t +0 -0
  752. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/VCard_2.out +0 -0
  753. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/VCard_3.out +0 -0
  754. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Vorbis.t +0 -0
  755. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Vorbis_2.out +0 -0
  756. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer.t +0 -0
  757. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_10.out +0 -0
  758. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_11.out +0 -0
  759. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_13.out +0 -0
  760. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_14.out +0 -0
  761. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_15.out +0 -0
  762. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_16.out +0 -0
  763. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_17.out +0 -0
  764. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_18.out +0 -0
  765. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_19.out +0 -0
  766. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_2.out +0 -0
  767. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_22.out +0 -0
  768. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_24.out +0 -0
  769. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_25.out +0 -0
  770. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_26.out +0 -0
  771. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_27.out +0 -0
  772. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_28.out +0 -0
  773. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_29.out +0 -0
  774. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_30.out +0 -0
  775. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_31.out +0 -0
  776. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_32.out +0 -0
  777. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_33.out +0 -0
  778. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_34.out +0 -0
  779. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_35.out +0 -0
  780. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_36.out +0 -0
  781. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_37.out +0 -0
  782. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_38.out +0 -0
  783. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_39.out +0 -0
  784. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_4.out +0 -0
  785. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_40.out +0 -0
  786. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_41.out +0 -0
  787. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_42.out +0 -0
  788. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_43.out +0 -0
  789. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_44.out +0 -0
  790. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_45.out +0 -0
  791. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_46.out +0 -0
  792. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_47.out +0 -0
  793. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_48.out +0 -0
  794. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_50.out +0 -0
  795. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_51.out +0 -0
  796. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_52.out +0 -0
  797. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_53.out +0 -0
  798. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_54.out +0 -0
  799. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_55.out +0 -0
  800. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_56.out +0 -0
  801. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_58.out +0 -0
  802. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_6.out +0 -0
  803. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_7.out +0 -0
  804. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/Writer_9.out +0 -0
  805. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP.t +0 -0
  806. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP_10.out +0 -0
  807. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP_11.out +0 -0
  808. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP_12.out +0 -0
  809. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP_13.out +0 -0
  810. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP_14.out +0 -0
  811. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP_15.out +0 -0
  812. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP_16.out +0 -0
  813. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP_17.out +0 -0
  814. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP_18.out +0 -0
  815. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP_19.out +0 -0
  816. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP_2.out +0 -0
  817. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP_20.out +0 -0
  818. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP_21.out +0 -0
  819. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP_22.out +0 -0
  820. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP_23.out +0 -0
  821. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP_24.out +0 -0
  822. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP_25.out +0 -0
  823. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP_26.out +0 -0
  824. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP_27.out +0 -0
  825. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP_28.out +0 -0
  826. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP_29.out +0 -0
  827. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP_3.out +0 -0
  828. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP_30.out +0 -0
  829. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP_31.out +0 -0
  830. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP_32.out +0 -0
  831. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP_34.out +0 -0
  832. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP_36.out +0 -0
  833. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP_37.out +0 -0
  834. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP_39.out +0 -0
  835. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP_40.out +0 -0
  836. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP_41.out +0 -0
  837. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP_42.out +0 -0
  838. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP_43.out +0 -0
  839. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP_44.out +0 -0
  840. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP_45.out +0 -0
  841. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP_5.out +0 -0
  842. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP_6.out +0 -0
  843. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP_7.out +0 -0
  844. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP_8.out +0 -0
  845. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/XMP_9.out +0 -0
  846. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/ZIP.t +0 -0
  847. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/ZIP_2.out +0 -0
  848. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/ZIP_3.out +0 -0
  849. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/ZIP_4.out +0 -0
  850. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/ZIP_5.out +0 -0
  851. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/ZIP_6.out +0 -0
  852. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/ZIP_7.out +0 -0
  853. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/AFCP.jpg +0 -0
  854. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/AIFF.aif +0 -0
  855. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/APE.ape +0 -0
  856. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/APE.mpc +0 -0
  857. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/ASF.wmv +0 -0
  858. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Apple.jpg +0 -0
  859. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Audible.aa +0 -0
  860. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/BMP.bmp +0 -0
  861. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/BPG.bpg +0 -0
  862. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/BigTIFF.btf +0 -0
  863. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Canon.jpg +0 -0
  864. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Canon1DmkIII.jpg +0 -0
  865. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/CanonRaw.cr2 +0 -0
  866. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/CanonRaw.crw +0 -0
  867. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/CanonVRD.dr4 +0 -0
  868. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/CanonVRD.vrd +0 -0
  869. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/CaptureOne.eip +0 -0
  870. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Casio.jpg +0 -0
  871. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Casio2.jpg +0 -0
  872. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/CasioQVCI.jpg +0 -0
  873. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/DICOM.dcm +0 -0
  874. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/DNG.dng +0 -0
  875. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/DPX.dpx +0 -0
  876. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/DV.dv +0 -0
  877. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/DjVu.djvu +0 -0
  878. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/EXE.a +0 -0
  879. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/EXE.dylib +0 -0
  880. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/EXE.elf +0 -0
  881. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/EXE.exe +0 -0
  882. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/EXE.macho +0 -0
  883. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/EXE.so +0 -0
  884. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/ExifTool.jpg +0 -0
  885. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/ExifTool.tif +0 -0
  886. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/ExtendedXMP.jpg +0 -0
  887. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/FLAC.flac +0 -0
  888. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/FLAC.ogg +0 -0
  889. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/FLIF.flif +0 -0
  890. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/FLIR.fpf +0 -0
  891. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/FLIR.jpg +0 -0
  892. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Flash.flv +0 -0
  893. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Flash.swf +0 -0
  894. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/FlashPix.ppt +0 -0
  895. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Font.afm +0 -0
  896. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Font.dfont +0 -0
  897. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Font.pfa +0 -0
  898. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Font.pfb +0 -0
  899. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Font.pfm +0 -0
  900. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Font.ttf +0 -0
  901. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/FotoStation.jpg +0 -0
  902. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/FujiFilm.jpg +0 -0
  903. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/FujiFilm.raf +0 -0
  904. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/GE.jpg +0 -0
  905. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/GIF.gif +0 -0
  906. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/GIMP.xcf +0 -0
  907. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/GPS.jpg +0 -0
  908. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/GeoTiff.tif +0 -0
  909. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Geotag.gpx +0 -0
  910. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Geotag.igc +0 -0
  911. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Geotag.kml +0 -0
  912. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Geotag.xml +0 -0
  913. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/HTML.html +0 -0
  914. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/ICC_Profile.icc +0 -0
  915. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/IPTC.jpg +0 -0
  916. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/ISO.iso +0 -0
  917. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/ITC.itc +0 -0
  918. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/InDesign.indd +0 -0
  919. data/bin/Image-ExifTool-10.49/t/images/JSON.json +19 -0
  920. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/JVC.jpg +0 -0
  921. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/JVC2.jpg +0 -0
  922. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Jpeg2000.j2c +0 -0
  923. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Jpeg2000.jp2 +0 -0
  924. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Kodak.jpg +0 -0
  925. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/KyoceraRaw.raw +0 -0
  926. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/LNK.lnk +0 -0
  927. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Lytro.lfp +0 -0
  928. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/M2TS.mts +0 -0
  929. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/MIE.mie +0 -0
  930. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/MIFF.miff +0 -0
  931. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/MOI.moi +0 -0
  932. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/MP3.mp3 +0 -0
  933. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/MWG.jpg +0 -0
  934. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/MXF.mxf +0 -0
  935. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Matroska.mkv +0 -0
  936. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Minolta.jpg +0 -0
  937. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Minolta.mrw +0 -0
  938. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Motorola.jpg +0 -0
  939. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Nikon.jpg +0 -0
  940. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Nikon.nef +0 -0
  941. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/NikonD2Hs.jpg +0 -0
  942. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/NikonD70.jpg +0 -0
  943. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/OOXML.docx +0 -0
  944. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Olympus.dss +0 -0
  945. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Olympus.jpg +0 -0
  946. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Olympus2.jpg +0 -0
  947. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/OlympusE1.jpg +0 -0
  948. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/OpenDoc.ods +0 -0
  949. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/OpenEXR.exr +0 -0
  950. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Opus.opus +0 -0
  951. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/PDF.pdf +0 -0
  952. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/PDF2.pdf +0 -0
  953. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/PGF.pgf +0 -0
  954. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/PICT.pict +0 -0
  955. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/PLIST-bin.plist +0 -0
  956. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/PLIST-xml.plist +0 -0
  957. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/PLUS.xmp +0 -0
  958. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/PNG.png +0 -0
  959. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/PPM.ppm +0 -0
  960. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/PSP.psp +0 -0
  961. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Palm.mobi +0 -0
  962. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Panasonic.jpg +0 -0
  963. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Panasonic.rw2 +0 -0
  964. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Pentax.avi +0 -0
  965. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Pentax.jpg +0 -0
  966. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/PhaseOne.iiq +0 -0
  967. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/PhotoCD.pcd +0 -0
  968. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/PhotoMechanic.jpg +0 -0
  969. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Photoshop.psd +0 -0
  970. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/PostScript.eps +0 -0
  971. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/QuickTime.m4a +0 -0
  972. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/QuickTime.mov +0 -0
  973. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/RIFF.avi +0 -0
  974. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/RIFF.wav +0 -0
  975. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/RIFF.webp +0 -0
  976. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/RTF.rtf +0 -0
  977. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Radiance.hdr +0 -0
  978. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Real.ra +0 -0
  979. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Real.ram +0 -0
  980. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Real.rm +0 -0
  981. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Ricoh.jpg +0 -0
  982. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Ricoh2.jpg +0 -0
  983. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Sanyo.jpg +0 -0
  984. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Sigma.jpg +0 -0
  985. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Sigma.x3f +0 -0
  986. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/SigmaDP2.x3f +0 -0
  987. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Sony.jpg +0 -0
  988. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Sony.pmp +0 -0
  989. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Torrent.torrent +0 -0
  990. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Unknown.jpg +0 -0
  991. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/VCard.ics +0 -0
  992. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/VCard.vcf +0 -0
  993. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Vorbis.ogg +0 -0
  994. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/Writer.jpg +0 -0
  995. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/XMP.inx +0 -0
  996. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/XMP.jpg +0 -0
  997. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/XMP.svg +0 -0
  998. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/XMP.xml +0 -0
  999. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/XMP.xmp +0 -0
  1000. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/XMP2.xmp +0 -0
  1001. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/XMP3.xmp +0 -0
  1002. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/XMP4.xmp +0 -0
  1003. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/XMP5.xmp +0 -0
  1004. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/XMP6.xmp +0 -0
  1005. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/ZIP.gz +0 -0
  1006. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/ZIP.zip +0 -0
  1007. data/bin/{Image-ExifTool-10.43 → Image-ExifTool-10.49}/t/images/iWork.numbers +0 -0
  1008. data/lib/exiftool_vendored/version.rb +1 -1
  1009. metadata +1008 -1001
  1010. data/bin/Image-ExifTool-10.43/Changes +0 -7737
  1011. data/bin/Image-ExifTool-10.43/MANIFEST +0 -1002
  1012. data/bin/Image-ExifTool-10.43/META.json +0 -51
  1013. data/bin/Image-ExifTool-10.43/META.yml +0 -31
  1014. data/bin/Image-ExifTool-10.43/README +0 -241
  1015. data/bin/Image-ExifTool-10.43/config_files/convert_regions.config +0 -89
  1016. data/bin/Image-ExifTool-10.43/config_files/example.config +0 -344
  1017. data/bin/Image-ExifTool-10.43/config_files/photoshop_paths.config +0 -160
  1018. data/bin/Image-ExifTool-10.43/config_files/time_zone.config +0 -76
  1019. data/bin/Image-ExifTool-10.43/exiftool +0 -6494
  1020. data/bin/Image-ExifTool-10.43/html/ExifTool.html +0 -2126
  1021. data/bin/Image-ExifTool-10.43/html/TagNames/AFCP.html +0 -53
  1022. data/bin/Image-ExifTool-10.43/html/TagNames/AIFF.html +0 -146
  1023. data/bin/Image-ExifTool-10.43/html/TagNames/APE.html +0 -149
  1024. data/bin/Image-ExifTool-10.43/html/TagNames/APP12.html +0 -188
  1025. data/bin/Image-ExifTool-10.43/html/TagNames/ASF.html +0 -1066
  1026. data/bin/Image-ExifTool-10.43/html/TagNames/Apple.html +0 -86
  1027. data/bin/Image-ExifTool-10.43/html/TagNames/Audible.html +0 -177
  1028. data/bin/Image-ExifTool-10.43/html/TagNames/BMP.html +0 -233
  1029. data/bin/Image-ExifTool-10.43/html/TagNames/BPG.html +0 -118
  1030. data/bin/Image-ExifTool-10.43/html/TagNames/Canon.html +0 -9741
  1031. data/bin/Image-ExifTool-10.43/html/TagNames/CanonRaw.html +0 -561
  1032. data/bin/Image-ExifTool-10.43/html/TagNames/CanonVRD.html +0 -2020
  1033. data/bin/Image-ExifTool-10.43/html/TagNames/Casio.html +0 -1606
  1034. data/bin/Image-ExifTool-10.43/html/TagNames/Composite.html +0 -745
  1035. data/bin/Image-ExifTool-10.43/html/TagNames/DICOM.html +0 -15762
  1036. data/bin/Image-ExifTool-10.43/html/TagNames/DNG.html +0 -295
  1037. data/bin/Image-ExifTool-10.43/html/TagNames/DPX.html +0 -229
  1038. data/bin/Image-ExifTool-10.43/html/TagNames/DV.html +0 -75
  1039. data/bin/Image-ExifTool-10.43/html/TagNames/DjVu.html +0 -313
  1040. data/bin/Image-ExifTool-10.43/html/TagNames/EXE.html +0 -741
  1041. data/bin/Image-ExifTool-10.43/html/TagNames/EXIF.html +0 -3484
  1042. data/bin/Image-ExifTool-10.43/html/TagNames/Extra.html +0 -482
  1043. data/bin/Image-ExifTool-10.43/html/TagNames/FLAC.html +0 -183
  1044. data/bin/Image-ExifTool-10.43/html/TagNames/FLIF.html +0 -84
  1045. data/bin/Image-ExifTool-10.43/html/TagNames/FLIR.html +0 -1340
  1046. data/bin/Image-ExifTool-10.43/html/TagNames/Flash.html +0 -419
  1047. data/bin/Image-ExifTool-10.43/html/TagNames/FlashPix.html +0 -1475
  1048. data/bin/Image-ExifTool-10.43/html/TagNames/Font.html +0 -485
  1049. data/bin/Image-ExifTool-10.43/html/TagNames/FotoStation.html +0 -103
  1050. data/bin/Image-ExifTool-10.43/html/TagNames/FujiFilm.html +0 -867
  1051. data/bin/Image-ExifTool-10.43/html/TagNames/GIF.html +0 -116
  1052. data/bin/Image-ExifTool-10.43/html/TagNames/GIMP.html +0 -140
  1053. data/bin/Image-ExifTool-10.43/html/TagNames/GeoTiff.html +0 -2298
  1054. data/bin/Image-ExifTool-10.43/html/TagNames/H264.html +0 -393
  1055. data/bin/Image-ExifTool-10.43/html/TagNames/HP.html +0 -155
  1056. data/bin/Image-ExifTool-10.43/html/TagNames/HTML.html +0 -666
  1057. data/bin/Image-ExifTool-10.43/html/TagNames/ICC_Profile.html +0 -711
  1058. data/bin/Image-ExifTool-10.43/html/TagNames/ID3.html +0 -1593
  1059. data/bin/Image-ExifTool-10.43/html/TagNames/IPTC.html +0 -903
  1060. data/bin/Image-ExifTool-10.43/html/TagNames/ISO.html +0 -159
  1061. data/bin/Image-ExifTool-10.43/html/TagNames/ITC.html +0 -90
  1062. data/bin/Image-ExifTool-10.43/html/TagNames/JFIF.html +0 -62
  1063. data/bin/Image-ExifTool-10.43/html/TagNames/JPEG.html +0 -602
  1064. data/bin/Image-ExifTool-10.43/html/TagNames/JVC.html +0 -56
  1065. data/bin/Image-ExifTool-10.43/html/TagNames/Jpeg2000.html +0 -466
  1066. data/bin/Image-ExifTool-10.43/html/TagNames/Kodak.html +0 -1891
  1067. data/bin/Image-ExifTool-10.43/html/TagNames/KyoceraRaw.html +0 -92
  1068. data/bin/Image-ExifTool-10.43/html/TagNames/LNK.html +0 -478
  1069. data/bin/Image-ExifTool-10.43/html/TagNames/Leaf.html +0 -871
  1070. data/bin/Image-ExifTool-10.43/html/TagNames/Lytro.html +0 -122
  1071. data/bin/Image-ExifTool-10.43/html/TagNames/M2TS.html +0 -133
  1072. data/bin/Image-ExifTool-10.43/html/TagNames/MIFF.html +0 -196
  1073. data/bin/Image-ExifTool-10.43/html/TagNames/MNG.html +0 -847
  1074. data/bin/Image-ExifTool-10.43/html/TagNames/MOI.html +0 -60
  1075. data/bin/Image-ExifTool-10.43/html/TagNames/MPC.html +0 -97
  1076. data/bin/Image-ExifTool-10.43/html/TagNames/MPEG.html +0 -249
  1077. data/bin/Image-ExifTool-10.43/html/TagNames/MPF.html +0 -199
  1078. data/bin/Image-ExifTool-10.43/html/TagNames/MWG.html +0 -584
  1079. data/bin/Image-ExifTool-10.43/html/TagNames/MXF.html +0 -6673
  1080. data/bin/Image-ExifTool-10.43/html/TagNames/Matroska.html +0 -1114
  1081. data/bin/Image-ExifTool-10.43/html/TagNames/Microsoft.html +0 -2126
  1082. data/bin/Image-ExifTool-10.43/html/TagNames/Minolta.html +0 -2634
  1083. data/bin/Image-ExifTool-10.43/html/TagNames/MinoltaRaw.html +0 -326
  1084. data/bin/Image-ExifTool-10.43/html/TagNames/Nikon.html +0 -6016
  1085. data/bin/Image-ExifTool-10.43/html/TagNames/OOXML.html +0 -280
  1086. data/bin/Image-ExifTool-10.43/html/TagNames/Olympus.html +0 -3655
  1087. data/bin/Image-ExifTool-10.43/html/TagNames/OpenEXR.html +0 -222
  1088. data/bin/Image-ExifTool-10.43/html/TagNames/Opus.html +0 -62
  1089. data/bin/Image-ExifTool-10.43/html/TagNames/PDF.html +0 -745
  1090. data/bin/Image-ExifTool-10.43/html/TagNames/PGF.html +0 -80
  1091. data/bin/Image-ExifTool-10.43/html/TagNames/PICT.html +0 -753
  1092. data/bin/Image-ExifTool-10.43/html/TagNames/PLIST.html +0 -86
  1093. data/bin/Image-ExifTool-10.43/html/TagNames/PNG.html +0 -578
  1094. data/bin/Image-ExifTool-10.43/html/TagNames/PSP.html +0 -160
  1095. data/bin/Image-ExifTool-10.43/html/TagNames/Palm.html +0 -388
  1096. data/bin/Image-ExifTool-10.43/html/TagNames/Panasonic.html +0 -1701
  1097. data/bin/Image-ExifTool-10.43/html/TagNames/PanasonicRaw.html +0 -471
  1098. data/bin/Image-ExifTool-10.43/html/TagNames/Pentax.html +0 -4809
  1099. data/bin/Image-ExifTool-10.43/html/TagNames/PhaseOne.html +0 -263
  1100. data/bin/Image-ExifTool-10.43/html/TagNames/PhotoCD.html +0 -402
  1101. data/bin/Image-ExifTool-10.43/html/TagNames/Photoshop.html +0 -739
  1102. data/bin/Image-ExifTool-10.43/html/TagNames/PostScript.html +0 -125
  1103. data/bin/Image-ExifTool-10.43/html/TagNames/PrintIM.html +0 -31
  1104. data/bin/Image-ExifTool-10.43/html/TagNames/Qualcomm.html +0 -4778
  1105. data/bin/Image-ExifTool-10.43/html/TagNames/QuickTime.html +0 -6231
  1106. data/bin/Image-ExifTool-10.43/html/TagNames/RIFF.html +0 -1382
  1107. data/bin/Image-ExifTool-10.43/html/TagNames/RSRC.html +0 -74
  1108. data/bin/Image-ExifTool-10.43/html/TagNames/RTF.html +0 -150
  1109. data/bin/Image-ExifTool-10.43/html/TagNames/Radiance.html +0 -87
  1110. data/bin/Image-ExifTool-10.43/html/TagNames/Rawzor.html +0 -45
  1111. data/bin/Image-ExifTool-10.43/html/TagNames/Real.html +0 -780
  1112. data/bin/Image-ExifTool-10.43/html/TagNames/Reconyx.html +0 -132
  1113. data/bin/Image-ExifTool-10.43/html/TagNames/Ricoh.html +0 -805
  1114. data/bin/Image-ExifTool-10.43/html/TagNames/Samsung.html +0 -682
  1115. data/bin/Image-ExifTool-10.43/html/TagNames/Sanyo.html +0 -366
  1116. data/bin/Image-ExifTool-10.43/html/TagNames/Scalado.html +0 -45
  1117. data/bin/Image-ExifTool-10.43/html/TagNames/Shortcuts.html +0 -280
  1118. data/bin/Image-ExifTool-10.43/html/TagNames/SigmaRaw.html +0 -438
  1119. data/bin/Image-ExifTool-10.43/html/TagNames/Sony.html +0 -10307
  1120. data/bin/Image-ExifTool-10.43/html/TagNames/Stim.html +0 -200
  1121. data/bin/Image-ExifTool-10.43/html/TagNames/Theora.html +0 -102
  1122. data/bin/Image-ExifTool-10.43/html/TagNames/Torrent.html +0 -187
  1123. data/bin/Image-ExifTool-10.43/html/TagNames/VCard.html +0 -433
  1124. data/bin/Image-ExifTool-10.43/html/TagNames/Vorbis.html +0 -243
  1125. data/bin/Image-ExifTool-10.43/html/TagNames/XMP.html +0 -10158
  1126. data/bin/Image-ExifTool-10.43/html/TagNames/ZIP.html +0 -205
  1127. data/bin/Image-ExifTool-10.43/html/TagNames/iWork.html +0 -49
  1128. data/bin/Image-ExifTool-10.43/html/TagNames/index.html +0 -218
  1129. data/bin/Image-ExifTool-10.43/html/ancient_history.html +0 -8365
  1130. data/bin/Image-ExifTool-10.43/html/config.html +0 -356
  1131. data/bin/Image-ExifTool-10.43/html/data_members.html +0 -288
  1132. data/bin/Image-ExifTool-10.43/html/exiftool_pod.html +0 -1873
  1133. data/bin/Image-ExifTool-10.43/html/faq.html +0 -1593
  1134. data/bin/Image-ExifTool-10.43/html/filename.html +0 -353
  1135. data/bin/Image-ExifTool-10.43/html/history.html +0 -366
  1136. data/bin/Image-ExifTool-10.43/html/index.html +0 -1365
  1137. data/bin/Image-ExifTool-10.43/html/install.html +0 -261
  1138. data/bin/Image-ExifTool-10.43/html/standards.html +0 -288
  1139. data/bin/Image-ExifTool-10.43/lib/Image/ExifTool.pm +0 -7809
  1140. data/bin/Image-ExifTool-10.43/lib/Image/ExifTool.pod +0 -2575
  1141. data/bin/Image-ExifTool-10.43/lib/Image/ExifTool/BuildTagLookup.pm +0 -2530
  1142. data/bin/Image-ExifTool-10.43/lib/Image/ExifTool/Canon.pm +0 -8929
  1143. data/bin/Image-ExifTool-10.43/lib/Image/ExifTool/Charset.pm +0 -423
  1144. data/bin/Image-ExifTool-10.43/lib/Image/ExifTool/Exif.pm +0 -6116
  1145. data/bin/Image-ExifTool-10.43/lib/Image/ExifTool/FlashPix.pm +0 -1960
  1146. data/bin/Image-ExifTool-10.43/lib/Image/ExifTool/FujiFilm.pm +0 -1264
  1147. data/bin/Image-ExifTool-10.43/lib/Image/ExifTool/Import.pm +0 -329
  1148. data/bin/Image-ExifTool-10.43/lib/Image/ExifTool/JPEGDigest.pm +0 -2616
  1149. data/bin/Image-ExifTool-10.43/lib/Image/ExifTool/Minolta.pm +0 -2996
  1150. data/bin/Image-ExifTool-10.43/lib/Image/ExifTool/Nikon.pm +0 -8173
  1151. data/bin/Image-ExifTool-10.43/lib/Image/ExifTool/PDF.pm +0 -2377
  1152. data/bin/Image-ExifTool-10.43/lib/Image/ExifTool/PLIST.pm +0 -448
  1153. data/bin/Image-ExifTool-10.43/lib/Image/ExifTool/PNG.pm +0 -1371
  1154. data/bin/Image-ExifTool-10.43/lib/Image/ExifTool/Panasonic.pm +0 -2378
  1155. data/bin/Image-ExifTool-10.43/lib/Image/ExifTool/Pentax.pm +0 -6136
  1156. data/bin/Image-ExifTool-10.43/lib/Image/ExifTool/Photoshop.pm +0 -952
  1157. data/bin/Image-ExifTool-10.43/lib/Image/ExifTool/QuickTime.pm +0 -6708
  1158. data/bin/Image-ExifTool-10.43/lib/Image/ExifTool/README +0 -1010
  1159. data/bin/Image-ExifTool-10.43/lib/Image/ExifTool/Sony.pm +0 -9806
  1160. data/bin/Image-ExifTool-10.43/lib/Image/ExifTool/TagLookup.pm +0 -9517
  1161. data/bin/Image-ExifTool-10.43/lib/Image/ExifTool/TagNames.pod +0 -30717
  1162. data/bin/Image-ExifTool-10.43/lib/Image/ExifTool/Validate.pm +0 -306
  1163. data/bin/Image-ExifTool-10.43/lib/Image/ExifTool/WriteXMP.pl +0 -1381
  1164. data/bin/Image-ExifTool-10.43/lib/Image/ExifTool/Writer.pl +0 -6352
  1165. data/bin/Image-ExifTool-10.43/perl-Image-ExifTool.spec +0 -113
  1166. data/bin/Image-ExifTool-10.43/t/CanonRaw_6.out +0 -233
  1167. data/bin/Image-ExifTool-10.43/t/ExifTool_31.out +0 -5
@@ -0,0 +1,2593 @@
1
+ #------------------------------------------------------------------------------
2
+ # File: ExifTool.pod - Documentation for File::ExifTool
3
+ #
4
+ # Description: Read and write meta information
5
+ #
6
+ # URL: http://owl.phy.queensu.ca/~phil/exiftool/
7
+ #
8
+ # Legal: Copyright (c) 2003-2017, Phil Harvey (phil at owl.phy.queensu.ca)
9
+ # This library is free software; you can redistribute it and/or
10
+ # modify it under the same terms as Perl itself.
11
+ #------------------------------------------------------------------------------
12
+
13
+ =head1 NAME
14
+
15
+ Image::ExifTool - Read and write meta information
16
+
17
+ =head1 SYNOPSIS
18
+
19
+ use Image::ExifTool qw(:Public);
20
+
21
+ # ---- Simple procedural usage ----
22
+
23
+ # Get hash of meta information tag names/values from an image
24
+ $info = ImageInfo('a.jpg');
25
+
26
+ # ---- Object-oriented usage ----
27
+
28
+ # Create a new Image::ExifTool object
29
+ $exifTool = new Image::ExifTool;
30
+
31
+ # Extract meta information from an image
32
+ $exifTool->ExtractInfo($file, \%options);
33
+
34
+ # Get list of tags in the order they were found in the file
35
+ @tagList = $exifTool->GetFoundTags('File');
36
+
37
+ # Get the value of a specified tag
38
+ $value = $exifTool->GetValue($tag, $type);
39
+
40
+ # Get a tag description
41
+ $description = $exifTool->GetDescription($tag);
42
+
43
+ # Get the group name associated with this tag
44
+ $group = $exifTool->GetGroup($tag, $family);
45
+
46
+ # Set a new value for a tag
47
+ $exifTool->SetNewValue($tag, $newValue);
48
+
49
+ # Write new meta information to a file
50
+ $success = $exifTool->WriteInfo($srcfile, $dstfile);
51
+
52
+ # ...plus a host of other useful methods...
53
+
54
+ =head1 DESCRIPTION
55
+
56
+ Reads and writes meta information in a wide variety of files, including the
57
+ maker notes of many digital cameras by various manufacturers such as Canon,
58
+ Casio, FLIR, FujiFilm, GE, HP, JVC/Victor, Kodak, Leaf,
59
+ Minolta/Konica-Minolta, Nikon, Nintendo, Olympus/Epson, Panasonic/Leica,
60
+ Pentax/Asahi, Phase One, Reconyx, Ricoh, Samsung, Sanyo, Sigma/Foveon and
61
+ Sony.
62
+
63
+ Below is a list of file types and meta information formats currently
64
+ supported by ExifTool (r = read, w = write, c = create):
65
+
66
+ File Types
67
+ ------------+-------------+-------------+-------------+------------
68
+ 3FR r | DV r | JSON r | ODT r | RIFF r
69
+ 3G2 r/w | DVB r/w | K25 r | OFR r | RSRC r
70
+ 3GP r/w | DYLIB r | KDC r | OGG r | RTF r
71
+ A r | EIP r | KEY r | OGV r | RW2 r/w
72
+ AA r | EPS r/w | LA r | OPUS r | RWL r/w
73
+ AAX r/w | EPUB r | LFP r | ORF r/w | RWZ r
74
+ ACR r | ERF r/w | LNK r | OTF r | RM r
75
+ AFM r | EXE r | M2TS r | PAC r | SEQ r
76
+ AI r/w | EXIF r/w/c | M4A/V r/w | PAGES r | SO r
77
+ AIFF r | EXR r | MAX r | PBM r/w | SR2 r/w
78
+ APE r | EXV r/w/c | MEF r/w | PCD r | SRF r
79
+ ARW r/w | F4A/V r/w | MIE r/w/c | PDB r | SRW r/w
80
+ ASF r | FFF r/w | MIFF r | PDF r/w | SVG r
81
+ AVI r | FLA r | MKA r | PEF r/w | SWF r
82
+ AZW r | FLAC r | MKS r | PFA r | THM r/w
83
+ BMP r | FLIF r/w | MKV r | PFB r | TIFF r/w
84
+ BPG r | FLV r | MNG r/w | PFM r | TORRENT r
85
+ BTF r | FPF r | MOBI r | PGF r | TTC r
86
+ CHM r | FPX r | MODD r | PGM r/w | TTF r
87
+ COS r | GIF r/w | MOI r | PLIST r | VCF r
88
+ CR2 r/w | GZ r | MOS r/w | PICT r | VRD r/w/c
89
+ CRW r/w | HDP r/w | MOV r/w | PMP r | VSD r
90
+ CS1 r/w | HDR r | MP3 r | PNG r/w | WAV r
91
+ DCM r | HTML r | MP4 r/w | PPM r/w | WDP r/w
92
+ DCP r/w | ICC r/w/c | MPC r | PPT r | WEBP r
93
+ DCR r | ICS r | MPG r | PPTX r | WEBM r
94
+ DFONT r | IDML r | MPO r/w | PS r/w | WMA r
95
+ DIVX r | IIQ r/w | MQV r/w | PSB r/w | WMV r
96
+ DJVU r | IND r/w | MRW r/w | PSD r/w | WV r
97
+ DLL r | INX r | MXF r | PSP r | X3F r/w
98
+ DNG r/w | ISO r | NEF r/w | QTIF r/w | XCF r
99
+ DOC r | ITC r | NRW r/w | RA r | XLS r
100
+ DOCX r | J2C r | NUMBERS r | RAF r/w | XLSX r
101
+ DPX r | JNG r/w | O r | RAM r | XMP r/w/c
102
+ DR4 r/w/c | JP2 r/w | ODP r | RAR r | ZIP r
103
+ DSS r | JPEG r/w | ODS r | RAW r/w |
104
+
105
+ Meta Information
106
+ ----------------------+----------------------+---------------------
107
+ EXIF r/w/c | CIFF r/w | Ricoh RMETA r
108
+ GPS r/w/c | AFCP r/w | Picture Info r
109
+ IPTC r/w/c | Kodak Meta r/w | Adobe APP14 r
110
+ XMP r/w/c | FotoStation r/w | MPF r
111
+ MakerNotes r/w/c | PhotoMechanic r/w | Stim r
112
+ Photoshop IRB r/w/c | JPEG 2000 r | DPX r
113
+ ICC Profile r/w/c | DICOM r | APE r
114
+ MIE r/w/c | Flash r | Vorbis r
115
+ JFIF r/w/c | FlashPix r | SPIFF r
116
+ Ducky APP12 r/w/c | QuickTime r | DjVu r
117
+ PDF r/w/c | Matroska r | M2TS r
118
+ PNG r/w/c | MXF r | PE/COFF r
119
+ Canon VRD r/w/c | PrintIM r | AVCHD r
120
+ Nikon Capture r/w/c | FLAC r | ZIP r
121
+ GeoTIFF r/w/c | ID3 r | (and more)
122
+
123
+ =head1 CONFIGURATION
124
+
125
+ User-defined tags can be added via the ExifTool configuration file, or by
126
+ defining the %Image::ExifTool::UserDefined hash before calling any ExifTool
127
+ methods. See "ExifTool_config" in the ExifTool distribution for more
128
+ details.
129
+
130
+ By default ExifTool looks for a configuration file named ".ExifTool_config"
131
+ first in your home directory, then in the directory of the application
132
+ script, but a different directory may be specified by setting the
133
+ EXIFTOOL_HOME environment variable, or a different file may be specified by
134
+ setting the ExifTool C<configFile> variable before using Image::ExifTool.
135
+ For example:
136
+
137
+ BEGIN { $Image::ExifTool::configFile = '/Users/phil/myconfig.cfg' }
138
+ use Image::ExifTool;
139
+
140
+ The configuration feature may also be disabled by setting C<configFile> to
141
+ an empty string:
142
+
143
+ BEGIN { $Image::ExifTool::configFile = '' }
144
+ use Image::ExifTool;
145
+
146
+ =head1 EXPORTS
147
+
148
+ Exports nothing by default, but L</ImageInfo> and all static methods may be
149
+ exported with the C<:Public> export list.
150
+
151
+ =head1 METHODS
152
+
153
+ All ExifTool features are accessed through the methods of the public
154
+ interface listed below. Other Image::ExifTool methods and modules should
155
+ not be accessed directly because their interface may change with future
156
+ versions.
157
+
158
+ None of these methods should ever die or issue warnings to STDERR if called
159
+ with the proper arguments (with the exception of L</SetNewValue> which may
160
+ send an error message to STDERR, but only when called in scalar context).
161
+ Error and warning messages that occur during processing are stored in the
162
+ values of the Error and Warning tags, and are accessible via the
163
+ L</GetValue> method to retrieve a single Error or Warning message, or
164
+ L</GetInfo> to retrieve any number of them.
165
+
166
+ The ExifTool methods are not thread safe.
167
+
168
+ =head2 new
169
+
170
+ Creates a new ExifTool object.
171
+
172
+ $exifTool = new Image::ExifTool;
173
+
174
+ Note that ExifTool uses AUTOLOAD to load non-member methods, so any class
175
+ using Image::ExifTool as a base class must define an AUTOLOAD which calls
176
+ Image::ExifTool::DoAutoLoad(). eg)
177
+
178
+ sub AUTOLOAD
179
+ {
180
+ Image::ExifTool::DoAutoLoad($AUTOLOAD, @_);
181
+ }
182
+
183
+ =head2 ImageInfo
184
+
185
+ Read image file and return meta information. This is the one step function
186
+ for retrieving meta information from an image. Internally, L</ImageInfo>
187
+ calls L</ExtractInfo> to extract the information, L</GetInfo> to generate
188
+ the information hash, and L</GetTagList> for the returned tag list.
189
+
190
+ # return meta information for 2 tags only (procedural)
191
+ $info = ImageInfo($filename, $tag1, $tag2);
192
+
193
+ # return information about an open image file (object-oriented)
194
+ $info = $exifTool->ImageInfo(\*FILE);
195
+
196
+ # return information from image data in memory for specified tags
197
+ %options = (PrintConv => 0);
198
+ @tagList = qw(filename imagesize xmp:creator exif:* -ifd1:*);
199
+ $info = ImageInfo(\$imageData, \@tagList, \%options);
200
+
201
+ # extract information from an embedded thumbnail image
202
+ $info = ImageInfo('image.jpg', 'thumbnailimage');
203
+ $thumbInfo = ImageInfo($$info{ThumbnailImage});
204
+
205
+ =over 4
206
+
207
+ =item Inputs:
208
+
209
+ L</ImageInfo> is very flexible about the input arguments, and interprets
210
+ them based on their type. It may be called with one or more arguments.
211
+ The one required argument is either a SCALAR (the image file name), a file
212
+ reference (a reference to the image file) or a SCALAR reference (a
213
+ reference to the image in memory). Other arguments are optional. The
214
+ order of the arguments is not significant, except that the first SCALAR is
215
+ taken to be the file name unless a file reference or scalar reference comes
216
+ earlier in the argument list.
217
+
218
+ Below is an explanation of how the L</ImageInfo> function arguments are
219
+ interpreted:
220
+
221
+ =over 4
222
+
223
+ =item ExifTool ref
224
+
225
+ L</ImageInfo> may be called with an ExifTool object if desired. Advantages
226
+ of using the object-oriented form are that options may be set before calling
227
+ L</ImageInfo>, and the object may be used afterward to access member
228
+ functions. Must be the first argument if used.
229
+
230
+ =item SCALAR
231
+
232
+ The first scalar argument is taken to be the file name unless an earlier
233
+ argument specified the image data via a file reference (file ref) or data
234
+ reference (SCALAR ref). The remaining scalar arguments are names of tags
235
+ for requested information. All tags are returned if no tags are specified.
236
+
237
+ Tag names are case-insensitive and may be prefixed by optional group names
238
+ separated by colons. A group name may begin with a family number (eg.
239
+ '1IPTC:Keywords'), to restrict matches to a specific family. In the tag
240
+ name, a '?' matches any single character and a '*' matches zero or more
241
+ characters. Thus 'GROUP:*' represents all tags in a specific group.
242
+ Wildcards may not be used in group names, with the exception that a group
243
+ name of '*' may be used to extract all available instances of a tag
244
+ regardless of the L</Duplicates> setting (eg. '*:WhiteBalance'). Multiple
245
+ groups may be specified (eg. 'EXIF:Time:*' extracts all EXIF Time tags). And
246
+ finally, a leading '-' indicates a tag to be excluded (eg. '-IFD1:*'), or a
247
+ trailing '#' causes the ValueConv value to be returned for this tag.
248
+
249
+ Note that keys in the returned information hash and elements of the returned
250
+ tag list are not necessarily the same as these tag names because group names
251
+ are removed, the case may be changed, and an instance number may be added.
252
+ For this reason it is best to use either the keys of the returned hash or
253
+ the elements of the returned tag list when accessing the tag values.
254
+
255
+ See L<Image::ExifTool::TagNames|Image::ExifTool::TagNames> for a complete
256
+ list of ExifTool tag names.
257
+
258
+ =item File ref
259
+
260
+ A reference to an open image file. If you use this method (or a SCALAR
261
+ reference) to access information in an image, the FileName and Directory
262
+ tags will not be returned. (Also, a number of the File System tags will not
263
+ be returned unless it is a plain file.) Image processing begins at the
264
+ current file position, and on return the file position is unspecified. May
265
+ be either a standard filehandle, or a reference to a
266
+ L<File::RandomAccess|File::RandomAccess> object. Note that the file remains
267
+ open and must be closed by the caller after L</ImageInfo> returns.
268
+
269
+ [Advanced: To allow a non-rewindable stream (eg. a network socket) to be
270
+ re-read after processing with ExifTool, first wrap the file reference in a
271
+ L<File::RandomAccess|File::RandomAccess> object, then pass this object to
272
+ L</ImageInfo>. The L<File::RandomAccess|File::RandomAccess> object will
273
+ buffer the file if necessary, and may be used to re-read the file after
274
+ L</ImageInfo> returns.]
275
+
276
+ =item SCALAR ref
277
+
278
+ A reference to image data in memory.
279
+
280
+ =item ARRAY ref
281
+
282
+ Reference to a list of tag names. On entry, any elements in the list are
283
+ added to the list of requested tags. Tags with names beginning with '-' are
284
+ excluded. On return, this list is updated to contain an ordered list of tag
285
+ keys for the returned information.
286
+
287
+ There will be 1:1 correspondence between the requested tags and the returned
288
+ tag keys only if the L</Duplicates> option is 0 and L</Sort> is 'Input'.
289
+ (With L</Duplicates> enabled, there may be more entries in the returned list
290
+ of tag keys, and with other L</Sort> settings the entries may not be in the
291
+ same order as requested.) If a requested tag doesn't exist, a tag key is
292
+ still generated, but the tag value is undefined.
293
+
294
+ =item HASH ref
295
+
296
+ Reference to a hash containing the options settings. See L</Options>
297
+ documentation below for a list of available options. Options specified
298
+ as arguments to L</ImageInfo> take precedence over L</Options> settings.
299
+
300
+ =back
301
+
302
+ =item Return Values:
303
+
304
+ L</ImageInfo> returns a reference to a hash of tag key/value pairs. The tag
305
+ keys are identifiers, which are similar to the tag names but may have an
306
+ appended instance number if multiple tags with the same name were extracted
307
+ from the image. Many of the ExifTool functions require a tag key as an
308
+ argument. Use L</GetTagName [static]> to get the tag name for a given tag
309
+ key. Note that the case of the tag names may not be the same as requested.
310
+ Here is a simple example to print out the information returned by
311
+ L</ImageInfo>:
312
+
313
+ foreach (sort keys %$info) {
314
+ print "$_ => $$info{$_}\n";
315
+ }
316
+
317
+ Values of the returned hash are usually simple scalars, but a scalar
318
+ reference is used to indicate binary data and an array reference may be used
319
+ to indicate a list. Also, a hash reference may be returned if the L</Struct>
320
+ option is used. Lists of values are joined by commas into a single
321
+ string only if the PrintConv option is enabled and the List option is
322
+ disabled (which are the defaults). Note that binary values are not
323
+ necessarily extracted unless specifically requested, or the Binary option is
324
+ enabled and the tag is not specifically excluded. If not extracted the
325
+ value is a reference to a string of the form "Binary data ##### bytes".
326
+
327
+ The code below gives an example of how to handle these return values, as
328
+ well as illustrating the use of other ExifTool functions:
329
+
330
+ use Image::ExifTool;
331
+ my $exifTool = new Image::ExifTool;
332
+ $exifTool->Options(Unknown => 1);
333
+ my $info = $exifTool->ImageInfo('a.jpg');
334
+ my $group = '';
335
+ my $tag;
336
+ foreach $tag ($exifTool->GetFoundTags('Group0')) {
337
+ if ($group ne $exifTool->GetGroup($tag)) {
338
+ $group = $exifTool->GetGroup($tag);
339
+ print "---- $group ----\n";
340
+ }
341
+ my $val = $info->{$tag};
342
+ if (ref $val eq 'SCALAR') {
343
+ if ($$val =~ /^Binary data/) {
344
+ $val = "($$val)";
345
+ } else {
346
+ my $len = length($$val);
347
+ $val = "(Binary data $len bytes)";
348
+ }
349
+ }
350
+ printf("%-32s : %s\n", $exifTool->GetDescription($tag), $val);
351
+ }
352
+
353
+ =item Notes:
354
+
355
+ ExifTool returns all values as byte strings of encoded characters. Perl
356
+ wide characters are not used. See L</CHARACTER ENCODINGS> for details about
357
+ the encodings. By default, most returned values are encoded in UTF-8. For
358
+ these, Encode::decode_utf8() may be used to convert to a sequence of logical
359
+ Perl characters.
360
+
361
+ As well as tags representing information extracted from the image, the
362
+ following L<Extra tags|Image::ExifTool::TagNames/Extra Tags> generated by
363
+ ExifTool may be returned:
364
+
365
+ ExifToolVersion - The ExifTool version number.
366
+
367
+ Error - An error message if the image could not be processed.
368
+
369
+ Warning - A warning message if problems were encountered while
370
+ processing the image.
371
+
372
+ =back
373
+
374
+ =head2 Options
375
+
376
+ Get/set ExifTool options. This function can be called to set the default
377
+ options for an ExifTool object. Options set this way are in effect for
378
+ all function calls but may be overridden by options passed as arguments
379
+ to some functions. Option names are not case sensitive.
380
+
381
+ The default option values may be changed by defining a
382
+ %Image::ExifTool::UserDefined::Options hash. See the ExifTool_config file
383
+ in the full ExifTool distribution for examples.
384
+
385
+ # exclude the 'OwnerName' tag from returned information
386
+ $exifTool->Options(Exclude => 'OwnerName');
387
+
388
+ # only get information in EXIF or MakerNotes groups
389
+ $exifTool->Options(Group0 => ['EXIF', 'MakerNotes']);
390
+
391
+ # ignore information from IFD1
392
+ $exifTool->Options(Group1 => '-IFD1');
393
+
394
+ # sort by groups in family 2, and extract unknown tags
395
+ $exifTool->Options(Sort => 'Group2', Unknown => 1);
396
+
397
+ # reset DateFormat option
398
+ $exifTool->Options(DateFormat => undef);
399
+
400
+ # do not extract duplicate tag names
401
+ $oldSetting = $exifTool->Options(Duplicates => 0);
402
+
403
+ # get current Verbose setting
404
+ $isVerbose = $exifTool->Options('Verbose');
405
+
406
+ # set a user parameter
407
+ $exifTool->Options(UserParam => 'MyParam=some value');
408
+
409
+ =over 4
410
+
411
+ =item Inputs:
412
+
413
+ 0) ExifTool object reference
414
+
415
+ 1) Option parameter name (case-insensitive)
416
+
417
+ 2) [optional] Option parameter value (may be undef to clear option)
418
+
419
+ 3-N) [optional] Additional parameter/value pairs
420
+
421
+ =item Option Parameters:
422
+
423
+ =over 4
424
+
425
+ =item Binary
426
+
427
+ Flag to extract the value data for all binary tags. Tag values representing
428
+ large binary data blocks (eg. ThumbnailImage) are not necessarily extracted
429
+ unless this option is set or the tag is specifically requested by name.
430
+ Default is undef.
431
+
432
+ =item ByteOrder
433
+
434
+ The byte order for newly created EXIF segments when writing. Note that if
435
+ EXIF information already exists, the existing order is maintained. Valid
436
+ values are 'MM', 'II' and undef. If ByteOrder is not defined (the default),
437
+ then the maker note byte order is used (if they are being copied), otherwise
438
+ big-endian ('MM') order is assumed. This can also be set via the
439
+ L<ExifByteOrder tag|Image::ExifTool::TagNames/Extra Tags>, but the ByteOrder
440
+ option takes precedence if both are set.
441
+
442
+ =item Charset
443
+
444
+ Character set for encoding character tag values passed to/from ExifTool with
445
+ code points above U+007F. Default is 'UTF8'. Valid values are listed
446
+ below, case is not significant:
447
+
448
+ Value Alias(es) Description
449
+ ----------- --------------- ----------------------------------
450
+ UTF8 cp65001, UTF-8 UTF-8 characters
451
+ Latin cp1252, Latin1 Windows Latin1 (West European)
452
+ Latin2 cp1250 Windows Latin2 (Central European)
453
+ Cyrillic cp1251, Russian Windows Cyrillic
454
+ Greek cp1253 Windows Greek
455
+ Turkish cp1254 Windows Turkish
456
+ Hebrew cp1255 Windows Hebrew
457
+ Arabic cp1256 Windows Arabic
458
+ Baltic cp1257 Windows Baltic
459
+ Vietnam cp1258 Windows Vietnamese
460
+ Thai cp874 Windows Thai
461
+ MacRoman cp10000, Roman Macintosh Roman
462
+ MacLatin2 cp10029 Macintosh Latin2 (Central Europe)
463
+ MacCyrillic cp10007 Macintosh Cyrillic
464
+ MacGreek cp10006 Macintosh Greek
465
+ MacTurkish cp10081 Macintosh Turkish
466
+ MacRomanian cp10010 Macintosh Romanian
467
+ MacIceland cp10079 Macintosh Icelandic
468
+ MacCroatian cp10082 Macintosh Croatian
469
+
470
+ Note that this option affects some types of information when reading/writing
471
+ the file and other types when getting/setting tag values, so it must be
472
+ defined for both types of access. See the L</CHARACTER ENCODINGS> section
473
+ for more information about the handling of special characters.
474
+
475
+ =item CharsetEXIF
476
+
477
+ Internal encoding to use for stored EXIF "ASCII" string values. May also be
478
+ set to undef to pass through EXIF "ASCII" values without recoding. Set to
479
+ "UTF8" to conform with the MWG recommendation. Default is undef.
480
+
481
+ =item CharsetFileName
482
+
483
+ External character set used for file names passed to ExifTool functions.
484
+ When set in Windows, this triggers use of Windows wide-character i/o library
485
+ routines (requires Win32API::File). Default is undef. May also be set to
486
+ an empty string to avoid "encoding not specified" warnings on Windows.
487
+
488
+ =item CharsetID3
489
+
490
+ Internal encoding to assume for ID3v1 strings. By the specification ID3v1
491
+ strings should be encoded in ISO 8859-1 (essentially Latin), but some
492
+ applications may use local encoding instead. Default is 'Latin'.
493
+
494
+ =item CharsetIPTC
495
+
496
+ Fallback internal IPTC character set to assume if IPTC information contains
497
+ no CodedCharacterSet tag. Possible values are the same as the L</Charset>
498
+ option. Default is 'Latin'.
499
+
500
+ Note that this option affects some types of information when reading/writing
501
+ the file and other types when getting/setting tag values, so it must be
502
+ defined for both types of access.
503
+
504
+ =item CharsetPhotoshop
505
+
506
+ Internal encoding to assume for Photoshop IRB resource names. Default is
507
+ 'Latin'.
508
+
509
+ =item CharsetQuickTime
510
+
511
+ Internal encoding to assume for QuickTime strings stored with an unspecified
512
+ encoding. Default is 'MacRoman'.
513
+
514
+ =item CharsetRIFF
515
+
516
+ Internal encoding to assume for strings in RIFF metadata (eg. AVI and WAV
517
+ files). The default value of 0 assumes "Latin" encoding unless otherwise
518
+ specified by the RIFF CSET chunk. Set to undef to pass through strings
519
+ without recoding. Default is 0.
520
+
521
+ =item Compact
522
+
523
+ Flag to write compact output. Default is undef. The XMP specification
524
+ suggests that the data be padded with blanks to allow in-place editing.
525
+ With this flag set the 2kB of padding is not written. Note that this only
526
+ effects embedded XMP since padding is never written for stand-alone XMP
527
+ files.
528
+
529
+ =item Composite
530
+
531
+ Flag to generate Composite tags when extracting information. Default is 1.
532
+
533
+ =item Compress
534
+
535
+ Flag to write new values in compressed format if possible. Has no effect
536
+ unless Compress::Zlib is installed. Default is undef.
537
+
538
+ =item CoordFormat
539
+
540
+ Format for printing GPS coordinates. This is a printf format string with
541
+ specifiers for degrees, minutes and seconds in that order, however minutes
542
+ and seconds may be omitted. If the hemisphere is known, a reference
543
+ direction (N, S, E or W) is appended to each printed coordinate, but adding
544
+ a C<+> to the first format specifier (eg. C<%+.6f>) prints a signed
545
+ coordinate instead. For example, the following table gives the output for
546
+ the same coordinate using various formats:
547
+
548
+ CoordFormat Example Output
549
+ ------------------- ------------------
550
+ q{%d deg %d' %.2f"} 54 deg 59' 22.80" (default for reading)
551
+ q{%d %d %.8f} 54 59 22.80000000 (default for copying)
552
+ q{%d deg %.4f min} 54 deg 59.3800 min
553
+ q{%.6f degrees} 54.989667 degrees
554
+
555
+ Note: To avoid loss of precision, the default coordinate format is
556
+ different when copying tags with L</SetNewValuesFromFile>.
557
+
558
+ =item DateFormat
559
+
560
+ Format for printing date/time values. See C<strftime> in the L<POSIX>
561
+ package for details about the format string. If date can not be converted,
562
+ value is left unchanged unless the StrictDate option is set. Timezones are
563
+ ignored. The inverse conversion (ie. when calling L</SetNewValue>) is
564
+ performed only if POSIX::strptime or Time::Piece is installed. The default
565
+ setting of undef causes date/time values to remain in standard EXIF format
566
+ (similar to a DateFormat of "%Y:%m:%d %H:%M:%S").
567
+
568
+ =item Duplicates
569
+
570
+ Flag to return values from tags with duplicate names when extracting
571
+ information. Default is 1.
572
+
573
+ =item Escape
574
+
575
+ Escape special characters in extracted values for HTML or XML. Also
576
+ unescapes HTML or XML character entities in input values passed to
577
+ L</SetNewValue>. Valid settings are 'HTML', 'XML' or undef. Default is
578
+ undef.
579
+
580
+ =item Exclude
581
+
582
+ Exclude specified tags from tags extracted from an image. The option value
583
+ is either a tag name or reference to a list of tag names to exclude. The
584
+ case of tag names is not significant. This option is ignored for
585
+ specifically requested tags. Tags may also be excluded by preceding their
586
+ name with a '-' in the arguments to L</ImageInfo>.
587
+
588
+ =item ExtendedXMP
589
+
590
+ This setting affects the reading and editing of extended XMP in JPEG images.
591
+ According to the XMP specification, extended XMP is only valid if it has the
592
+ GUID specified by the HasExtendedXMP tag, so by default ExifTool will ignore
593
+ other extended XMP, but this option allows full control over the extended
594
+ XMP to be extracted.
595
+
596
+ 0 - ignore all extended XMP
597
+ 1 - read extended XMP with valid GUID only (default)
598
+ 2 - read extended XMP with any GUID
599
+ <guid> - read extended XMP with a specific GUID
600
+
601
+ =item ExtractEmbedded
602
+
603
+ Flag to extract information from embedded documents in EPS files, embedded
604
+ EPS information and JPEG and Jpeg2000 images in PDF files, embedded MPF
605
+ images in JPEG and MPO files, streaming metadata in AVCHD videos, and the
606
+ resource fork of Mac OS files. Default is undef.
607
+
608
+ =item FastScan
609
+
610
+ Flag to increase speed of extracting information from JPEG images. With
611
+ this option set to 1, ExifTool will not scan to the end of a JPEG image to
612
+ check for an AFCP, CanonVRD, FotoStation, PhotoMechanic, MIE or PreviewImage
613
+ trailer. This also stops the parsing after the first comment in GIF images,
614
+ and at the audio/video data with RIFF-format files (AVI, WAV, etc), so any
615
+ trailing metadata (eg. XMP written by some utilities) may be missed. When
616
+ combined with the ScanForXMP option, prevents scanning for XMP in recognized
617
+ file types. With a value of 2, ExifTool will also avoid extracting any EXIF
618
+ MakerNote information. When set to 3, the file is not actually parsed, and
619
+ only an initial guess at FileType and some pseudo tags are returned.
620
+ Default is undef.
621
+
622
+ =item Filter
623
+
624
+ Perl expression used to filter values for all tags. The expression acts on
625
+ the value of the Perl default variable ($_), and changes the value of this
626
+ variable as required. The value is not changed if $_ is set to undef.
627
+ Applies to all returned values unless PrintConv option is disabled.
628
+
629
+ =item FixBase
630
+
631
+ Fix maker notes base offset. A common problem with image editing software
632
+ is that offsets in the maker notes are not adjusted properly when the file
633
+ is modified. This may cause the wrong values to be extracted for some maker
634
+ note entries when reading the edited file. FixBase specifies an integer
635
+ value to be added to the maker notes base offset. It may also be set to the
636
+ empty string ('') for ExifTool will take its best guess at the correct base,
637
+ or undef (the default) for no base adjustment.
638
+
639
+ =item GeoMaxIntSecs
640
+
641
+ Maximum interpolation time in seconds for geotagging. Geotagging is treated
642
+ as an extrapolation if the Geotime value lies between two fixes in the same
643
+ track which are separated by a number of seconds greater than this.
644
+ Otherwise, the coordinates are calculated as a linear interpolation between
645
+ the nearest fixes on either side of the Geotime value. Set to 0 to disable
646
+ interpolation and use the coordinates of the nearest fix instead (provided
647
+ it is within GeoMaxExtSecs, otherwise geotagging fails). Default is 1800.
648
+
649
+ =item GeoMaxExtSecs
650
+
651
+ Maximum extrapolation time in seconds for geotagging. Geotagging fails if
652
+ the Geotime value lies outside a GPS track by a number of seconds greater
653
+ than this. Otherwise, the coordinates of the nearest fix are taken.
654
+ Default is 1800.
655
+
656
+ =item GeoMaxHDOP
657
+
658
+ Maximum Horizontal (2D) Dilution Of Precision for geotagging. GPS fixes are
659
+ ignored if the HDOP is greater than this. Default is undef.
660
+
661
+ =item GeoMaxPDOP
662
+
663
+ Maximum Position (3D) Dilution Of Precision for geotagging. GPS fixes are
664
+ ignored if the PDOP is greater than this. Default is undef.
665
+
666
+ =item GeoMinSats
667
+
668
+ Minimum number of satellites for geotagging. GPS fixes are ignored if the
669
+ number of acquired satellites is less than this. Default is undef.
670
+
671
+ =item GlobalTimeShift
672
+
673
+ Time shift to apply to all extracted date/time PrintConv values. Does not
674
+ affect ValueConv values. Value is a date/time shift string (see
675
+ L<Image::ExifTool::Shift.pl|Image::ExifTool::Shift.pl>), with a leading '-'
676
+ for negative shifts. Default is undef.
677
+
678
+ =item Group#
679
+
680
+ Extract tags only for specified groups in family # (Group0 assumed if #
681
+ not given). The option value may be a single group name or a reference
682
+ to a list of groups. Case is significant in group names. Specify a group
683
+ to be excluded by preceding group name with a '-'. See L</GetGroup> for a
684
+ description of group families, and L</GetAllGroups [static]> for lists of
685
+ group names.
686
+
687
+ =item HtmlDump
688
+
689
+ Dump information in hex to dynamic HTML web page. The value may be 0-3 for
690
+ increasingly larger limits on the maximum block size. Default is 0. Output
691
+ goes to the file specified by the TextOut option (\*STDOUT by default).
692
+
693
+ =item HtmlDumpBase
694
+
695
+ Base for HTML dump offsets. If not defined, the EXIF/TIFF base offset is
696
+ used. Set to 0 for absolute offsets. Default is undef.
697
+
698
+ =item IgnoreMinorErrors
699
+
700
+ Flag to ignore minor errors. Causes minor errors to be downgraded to
701
+ warnings, and minor warnings to be ignored. This option is provided mainly
702
+ to allow writing of files when minor errors occur, but by ignoring some
703
+ minor warnings the behaviour of ExifTool may be changed to allow some
704
+ questionable operations to proceed (such as extracting thumbnail and preview
705
+ images even if they don't have a recognizable header). Minor errors and
706
+ warnings are denoted by "[minor]" at the start of the message, or "[Minor]"
707
+ (with a capital "M") for warnings that affect processing when ignored.
708
+
709
+ =item Lang
710
+
711
+ Localized language for exiftool tag descriptions, etc. Available languages
712
+ are given by the Image::ExifTool::Lang module names (eg. 'fr', 'zh_cn'). If
713
+ the specified language isn't available, the option is not changed. May be
714
+ set to undef to select the built-in default language. Default is 'en'.
715
+
716
+ =item LargeFileSupport
717
+
718
+ Flag to indicate that 64-bit file offsets are supported on this system.
719
+ Default is undef.
720
+
721
+ =item List
722
+
723
+ Flag to extract lists of PrintConv values into arrays instead of joining
724
+ them into a string of values. The L</ListSep> option specifies the
725
+ separator used when combining values. Default is undef.
726
+
727
+ =item ListItem
728
+
729
+ Return only a specific item from list-type values. A value of 0 returns the
730
+ first item in the list, 1 return the second item, etc. Negative indices may
731
+ also be used, with -1 representing the last item in the list. Applies only
732
+ to the top-level list of nested lists. Default is undef to return all items
733
+ in the list.
734
+
735
+ =item ListSep
736
+
737
+ Separator string used to join lists of PrintConv values when L</List> option
738
+ is not set. Default is ', '.
739
+
740
+ =item ListSplit
741
+
742
+ Regular expression used to split values of list-type tags into individual
743
+ items when writing. (eg. use ',\\s*' to split a comma-separated list.)
744
+ Default is undef.
745
+
746
+ =item MakerNotes
747
+
748
+ Option to extract MakerNotes and other writable subdirectories (such as
749
+ PrintIM) as a data block. Normally when the MakerNotes are extracted they
750
+ are rebuilt to include data outside the boundaries of the original maker
751
+ note data block, but a value of 2 disables this feature. Possible values
752
+ are:
753
+
754
+ 0 - Do not extract writable subdirectories (same as default of undef)
755
+ 1 - Extract and rebuild maker notes into self-contained block
756
+ 2 - Extract without rebuilding maker notes
757
+
758
+ =item MDItemTags
759
+
760
+ Flag to extract the OS X metadata item tags (see the "mdls" man page and
761
+ L<Image::ExifTool::TagNames/MacOS MDItem Tags> for more information).
762
+
763
+ =item MissingTagValue
764
+
765
+ Value for missing tags in expressions evaluated by L</SetNewValuesFromFile>.
766
+ If not set, a minor error is issued for missing values, or the value is set
767
+ to '' if L</IgnoreMinorErrors> is set. Default is undef.
768
+
769
+ =item NoPDFList
770
+
771
+ Flag to avoid splitting PDF list-type tag values into separate items.
772
+ Default is undef.
773
+
774
+ =item Password
775
+
776
+ Password for reading/writing password-protected PDF documents. Ignored if a
777
+ password is not required. Character encoding of the password is determined
778
+ by the value of the Charset option at processing time. Default is undef.
779
+
780
+ =item PNGEarlyXMP
781
+
782
+ Flag to write XMP in PNG images before the IDAT (image data) chunk. By
783
+ default, ExifTool adds new XMP to the end of a PNG file (just before IEND).
784
+ This is allowed by the PNG and XMP specifications, but some utilities seem
785
+ to ignore XMP if it comes after the image data. The PNGEarlyXMP option
786
+ causes ExifTool to instead add new XMP before the PNG IDAT chunk. However,
787
+ since ExifTool uses a single-pass writing algorithm, it has no way to tell
788
+ if XMP already exists later in the file before writing the new XMP in this
789
+ location. If this happens, a minor error is issued when the extra XMP is
790
+ encountered, and the file is not written. Adding the L</IgnoreMinorErrors>
791
+ option causes the XMP after IDAT to be deleted, thus resolving the conflict
792
+ (at the expense of possible metadata loss), and allowing the file to be
793
+ written. The PNGEarlyXMP option is applied automatically when deleting all
794
+ XMP and writing new XMP back in one step. When reading, this option causes
795
+ a warning to be issued if standard XMP is found after the IDAT chunk.
796
+
797
+ =item PrintConv
798
+
799
+ Flag to enable automatic print conversion. Also enables inverse
800
+ print conversion for writing. Default is 1.
801
+
802
+ =item QuickTimeUTC
803
+
804
+ Flag set to assume that QuickTime date/time values are stored as UTC,
805
+ causing conversion to local time when they are extracted. According to the
806
+ QuickTime specification date/time values should be UTC, but many digital
807
+ cameras store local time instead (presumably because they don't know the
808
+ time zone), so the default is undef. This option also disables the
809
+ autodetection of incorrect time-zero offsets in QuickTime date/time values,
810
+ and enforces a time zero of 1904 as per the QuickTime specification.
811
+
812
+ =item RequestAll
813
+
814
+ Flag to request all tags to be extracted. This causes some tags to be
815
+ generated which normally would not be unless specifically requested (by
816
+ passing the tag name to L</ImageInfo> or L</ExtractInfo>). May be set to 2
817
+ or 3 to enable generation of some additional tags mentioned in the tag name
818
+ documentation. Default is undef.
819
+
820
+ =item RequestTags
821
+
822
+ List of additional tag and/or group names to request in the next call to
823
+ L</ExtractInfo>. This option is useful only for tags/groups which aren't
824
+ extracted unless specifically requested. Value may be a list reference, a
825
+ delimited string of names (any delimiter is allowed), or undef to clear the
826
+ current RequestTags list. Groups are requested by adding a colon after the
827
+ name (eg. "MacOS:"). Names are converted to lower case as they are added to
828
+ the list. Default is undef.
829
+
830
+ =item ScanForXMP
831
+
832
+ Flag to scan all files (even unrecognized formats) for XMP information
833
+ unless XMP was already found in the file. When combined with the FastScan
834
+ option, only unrecognized file types are scanned for XMP. Default is undef.
835
+
836
+ =item Sort
837
+
838
+ Specifies order to sort tags in returned list:
839
+
840
+ Input - Sort in same order as input tag arguments (default)
841
+ File - Sort in order that tags were found in the file
842
+ Tag - Sort alphabetically by tag name
843
+ Descr - Sort by tag description (for current Lang setting)
844
+ Group# - Sort by tag group, where # is zero or more family
845
+ numbers separated by colons. If # is not specified,
846
+ Group0 is assumed. See GetGroup for a description
847
+ of group families.
848
+
849
+ =item Sort2
850
+
851
+ Secondary sort order used for tags within each group when Sort is 'Group':
852
+
853
+ File - Sort in order tags were found in the file (default)
854
+ Tag - Sort alphabetically by tag name
855
+ Descr - Sort by tag description (for current Lang setting)
856
+
857
+ =item StrictDate
858
+
859
+ Flag to return undefined value for any date which can't be converted when
860
+ the DateFormat option is used. Default is undef.
861
+
862
+ undef - Same as 0 for reading, 1 for copying
863
+ 0 - Return date/time value unchanged if it can't be converted
864
+ 1 - Return undef if date/time value can't be converted
865
+
866
+ =item Struct
867
+
868
+ Flag to return XMP structures as hash references instead of flattening into
869
+ individual tags. Has no effect when writing since both flattened and
870
+ structured tags may always be written. Possible values are:
871
+
872
+ undef - (default) Same as 0 for reading, 2 for copying
873
+ 0 - Read/copy flattened tags
874
+ 1 - Read/copy structured tags
875
+ 2 - Read/copy both flattened and structured tags, but flag
876
+ flattened tags as 'unsafe' for copying
877
+
878
+ =item SystemTags
879
+
880
+ Flag to extract the following additional File System tags: FileAttributes,
881
+ FileDeviceNumber, FileInodeNumber, FileHardLinks, FileUserID, FileGroupID,
882
+ FileDeviceID, FileBlockSize and FileBlockCount.
883
+
884
+ =item TextOut
885
+
886
+ Output file reference for Verbose and HtmlDump options. Default is
887
+ \*STDOUT.
888
+
889
+ =item Unknown
890
+
891
+ Flag to get the values of unknown tags. If set to 1, unknown tags are
892
+ extracted from EXIF (or other tagged-format) directories. If set to 2,
893
+ unknown tags are also extracted from binary data blocks. Default is 0.
894
+
895
+ =item UserParam
896
+
897
+ Special option to set/get user-defined parameters. Useful to allow external
898
+ input into tag name expressions and ValueConv logic. Valid UserParam values
899
+ are:
900
+
901
+ PARAM - Get parameter
902
+ PARAM= - Clear parameter
903
+ PARAM=VALUE - Set parameter
904
+ <hash ref> - Set entire UserParam hash lookup
905
+ undef - Clear all user parameters
906
+
907
+ Where I<PARAM> is the user-defined parameter name (case insensitive).
908
+
909
+ User-defined parameters may be accessed in tag name expressions by prefixing
910
+ the parameter name with a dollar sign, just like normal tags. If called
911
+ without no additional arguments, C<Options('UserParam')> returns a reference
912
+ to the hash of all user parameters (with lower-case names).
913
+
914
+ =item Validate
915
+
916
+ [Experimental] Flag to perform extra validation checks when reading, causing
917
+ extra warnings to be generated if problems are found. Default is undef.
918
+
919
+ =item Verbose
920
+
921
+ Print verbose messages to file specified by TextOut option. Value may be
922
+ from 0 to 5 for increasingly verbose messages. Default is 0. With the
923
+ verbose option set, messages are printed to the console as the file is
924
+ parsed. Level 1 prints the tag names and raw values. Level 2 adds more
925
+ details about the tags. Level 3 adds a hex dump of the tag data, but with
926
+ limits on the number of bytes dumped. Levels 4 and 5 remove the dump limit
927
+ on tag values and JPEG segment data respectively.
928
+
929
+ =item WriteMode
930
+
931
+ Set tag write/create mode. Value is a string of one or more characters from
932
+ list below. Default is 'wcg'.
933
+
934
+ w - Write existing tags
935
+ c - Create new tags
936
+ g - create new Groups as necessary
937
+
938
+ The level of the group differs for different types of metadata. For XMP or
939
+ IPTC this is the full XMP/IPTC block (the family 0 group), but for EXIF this
940
+ is the individual IFD (the family 1 group).
941
+
942
+ =item XAttrTags
943
+
944
+ Flag to extract the OS X extended attribute tags (see the "xattr" man page
945
+ and L<Image::ExifTool::TagNames/MacOS XAttr Tags> for more information).
946
+
947
+ =item XMPAutoConv
948
+
949
+ Flag to enable automatic conversion for unknown XMP tags with values that
950
+ look like rational numbers or dates. Default is 1.
951
+
952
+ =back
953
+
954
+ =item Return Values:
955
+
956
+ The original value of the last specified parameter.
957
+
958
+ =back
959
+
960
+ =head2 ClearOptions
961
+
962
+ Reset all options to their default values. Loads user-defined default
963
+ option values from the %Image::ExifTool::UserDefined::Options hash in the
964
+ .ExifTool_config file if it exists.
965
+
966
+ $exifTool->ClearOptions();
967
+
968
+ =over 4
969
+
970
+ =item Inputs:
971
+
972
+ 0) ExifTool object reference
973
+
974
+ =item Return Values:
975
+
976
+ (none)
977
+
978
+ =back
979
+
980
+ =head2 ExtractInfo
981
+
982
+ Extract all meta information from an image.
983
+
984
+ $success = $exifTool->ExtractInfo('image.jpg', \%options);
985
+
986
+ =over 4
987
+
988
+ =item Inputs:
989
+
990
+ L</ExtractInfo> takes exactly the same arguments as L</ImageInfo>. The only
991
+ difference is that a list of tag keys is not returned if an ARRAY reference
992
+ is given. The following options are effective in the call to
993
+ L</ExtractInfo>:
994
+
995
+ Binary, Charset, CharsetEXIF, CharsetFileName, CharsetID3, CharsetIPTC,
996
+ CharsetPhotoshop, CharsetQuickTime, CharsetRIFF, Composite, ExtendedXMP,
997
+ ExtractEmbedded, FastScan, FixBase, HtmlDump, HtmlDumpBase,
998
+ IgnoreMinorErrors, Lang, LargeFileSupport, MakerNotes, MDItemTags,
999
+ NoPDFList, Password, PNGEarlyXMP, QuickTimeUTC (enforced 1904 time zero),
1000
+ RequestAll, RequestTags, ScanForXMP, Struct, TextOut, Unknown, Verbose,
1001
+ XAttrTags and XMPAutoConv.
1002
+
1003
+ =item Return Value:
1004
+
1005
+ 1 if this was a recognized file format, 0 otherwise (and 'Error' tag set).
1006
+
1007
+ =back
1008
+
1009
+ =head2 GetInfo
1010
+
1011
+ L</GetInfo> is called to return meta information after it has been extracted
1012
+ from the image by a previous call to L</ExtractInfo> or L</ImageInfo>. This
1013
+ function may be called repeatedly after a single call to L</ExtractInfo> or
1014
+ L</ImageInfo>.
1015
+
1016
+ # get image width and height only
1017
+ $info = $exifTool->GetInfo('ImageWidth', 'ImageHeight');
1018
+
1019
+ # get all Error and Warning messages
1020
+ $info = $exifTool->GetInfo('Error', 'Warning');
1021
+
1022
+ # get information for all tags in list (list updated with tags found)
1023
+ $info = $exifTool->GetInfo(\@ioTagList);
1024
+
1025
+ # get all information in Author or Location groups
1026
+ $info = $exifTool->GetInfo({Group2 => ['Author', 'Location']});
1027
+
1028
+ =over 4
1029
+
1030
+ =item Inputs:
1031
+
1032
+ Inputs are the same as L</ExtractInfo> and L</ImageInfo> except that an
1033
+ image can not be specified. Options in effect are:
1034
+
1035
+ Charset, CoordFormat, DateFormat, Duplicates, Escape, Exclude, Filter,
1036
+ Group#, GlobalTimeShift, Lang, List, ListItem, ListSep, PrintConv, Sort (if
1037
+ a tag list reference is given) and StrictDate.
1038
+
1039
+ =item Return Value:
1040
+
1041
+ Reference to information hash, the same as with L</ImageInfo>.
1042
+
1043
+ =back
1044
+
1045
+ The following options are effective in the call to L</GetInfo>:
1046
+
1047
+ Charset, CoordFormat, DateFormat, Duplicates, Escape, Exclude, Filter,
1048
+ Group#, GlobalTimeShift, Lang, List, ListItem, ListSep, PrintConv,
1049
+ QuickTimeUTC (conversion to local time), Sort (if a tag list reference is
1050
+ given) and StrictDate.
1051
+
1052
+ =head2 WriteInfo
1053
+
1054
+ Write meta information to a file. The specified source file is rewritten to
1055
+ the same-type destination file with new information as specified by previous
1056
+ calls to L</SetNewValue>. The necessary segments and/or directories are
1057
+ created in the destination file as required to store the specified
1058
+ information. May be called repeatedly to write the same information to
1059
+ additional files without the need to call L</SetNewValue> again.
1060
+
1061
+ Note that it is NOT necessary to call L</ExtractInfo> or L</ImageInfo>
1062
+ before L</WriteInfo>. L</WriteInfo> changes only metadata specified by
1063
+ previous calls to L</SetNewValue>.
1064
+
1065
+
1066
+ # add information to a source file, writing output to new file
1067
+ $exifTool->WriteInfo($srcfile, $dstfile);
1068
+
1069
+ # create XMP data file from scratch
1070
+ $exifTool->WriteInfo(undef, $dstfile, 'XMP');
1071
+
1072
+ # overwrite file (you do have backups, right?)
1073
+ $exifTool->WriteInfo($srcfile);
1074
+
1075
+ =over 4
1076
+
1077
+ =item Inputs:
1078
+
1079
+ 0) ExifTool object reference
1080
+
1081
+ 1) Source file name, file reference, scalar reference, or undef to create a
1082
+ file from scratch. A reference to a
1083
+ L<File::RandomAccess|File::RandomAccess> object is also allowed as a source,
1084
+ but in this case the destination is not optional.
1085
+
1086
+ 2) [optional] Destination file name, file reference, scalar reference, or
1087
+ undef to overwrite the original file. May be '-' to write to stdout.
1088
+
1089
+ 3) [optional] Destination file type. Ignored if a source is defined.
1090
+
1091
+ =item Return Value:
1092
+
1093
+ 1 if file was written OK, 2 if file was written but no changes made, 0 on
1094
+ file write error.
1095
+
1096
+ If an error code is returned, an Error tag is set and GetValue('Error') can
1097
+ be called to obtain the error description. A Warning tag may be set even if
1098
+ this routine is successful. Calling WriteInfo clears any pre-existing Error
1099
+ and Warning tags.
1100
+
1101
+ $errorMessage = $exifTool->GetValue('Error');
1102
+ $warningMessage = $exifTool->GetValue('Warning');
1103
+
1104
+ =item Notes:
1105
+
1106
+ The source file name may be undefined to create a file from scratch
1107
+ (currently only XMP, MIE, ICC, VRD, DR4, EXV and EXIF files can be created
1108
+ in this way -- see L</CanCreate> for details). If undefined, the
1109
+ destination file type is required unless the type can be determined from the
1110
+ extension of the destination file name.
1111
+
1112
+ If a destination file name is given, the specified file must not exist
1113
+ because an existing destination file will not be overwritten. Any new
1114
+ values for FileName, Directory or HardLink are ignored when a destination
1115
+ file name is specified.
1116
+
1117
+ The destination file name may be undefined to overwrite the original file
1118
+ (make sure you have backups!). In this case, if a source file name is
1119
+ provided, a temporary file is created and renamed to replace the source file
1120
+ if no errors occurred while writing. Otherwise, if a source file reference
1121
+ or scalar reference is used, the image is first written to memory then
1122
+ copied back to replace the original if there were no errors.
1123
+
1124
+ On Mac OS systems, the file resource fork is preserved if this routine is
1125
+ called with a source file name.
1126
+
1127
+ =back
1128
+
1129
+ The following ExifTool options are effective in the call to L</WriteInfo>:
1130
+
1131
+ ByteOrder, Charset, CharsetEXIF, CharsetFileName, CharsetIPTC, Compact,
1132
+ Compress, FixBase, IgnoreMinorErrors, Password, PNGEarlyXMP and Verbose.
1133
+
1134
+ =head2 GetTagList
1135
+
1136
+ Get a sorted list of tags from the specified information hash or tag list.
1137
+
1138
+ @tags = $exifTool->GetTagList($info, 'Group0');
1139
+
1140
+ =over 4
1141
+
1142
+ =item Inputs:
1143
+
1144
+ 0) ExifTool object reference
1145
+
1146
+ 1) [optional] Information hash reference or tag list reference
1147
+
1148
+ 2) [optional] Sort order ('Input', 'File', 'Tag', 'Descr' or 'Group#')
1149
+
1150
+ 3) [optional] Secondary sort order ('File', 'Tag' or 'Descr')
1151
+
1152
+ If the information hash or tag list reference is not provided, then the list
1153
+ of found tags from the last call to L</ImageInfo>, L</ExtractInfo> or
1154
+ L</GetInfo> is used instead, and the result is the same as if
1155
+ L</GetFoundTags> was called. If sort order is not specified, the sort order
1156
+ is taken from the current options settings.
1157
+
1158
+ =item Return Values:
1159
+
1160
+ A list of tag keys in the specified order.
1161
+
1162
+ =back
1163
+
1164
+ =head2 GetFoundTags
1165
+
1166
+ Get list of found tags in specified sort order. The found tags are the tags
1167
+ for the information obtained from the most recent call to L</ImageInfo>,
1168
+ L</ExtractInfo> or L</GetInfo> for this object.
1169
+
1170
+ @tags = $exifTool->GetFoundTags('File');
1171
+
1172
+ =over 4
1173
+
1174
+ =item Inputs:
1175
+
1176
+ 0) ExifTool object reference
1177
+
1178
+ 1) [optional] Sort order ('Input', 'File', 'Tag', 'Descr' or 'Group#')
1179
+
1180
+ 2) [optional] Secondary sort order ('File', 'Tag' or 'Descr')
1181
+
1182
+ If sort order is not specified, the sort order from the ExifTool options is
1183
+ used.
1184
+
1185
+ =item Return Values:
1186
+
1187
+ A list of tag keys in the specified order.
1188
+
1189
+ =back
1190
+
1191
+ =head2 GetRequestedTags
1192
+
1193
+ Get list of requested tags. These are the tags that were specified in the
1194
+ arguments of the most recent call to L</ImageInfo>, L</ExtractInfo> or
1195
+ L</GetInfo>, including tags specified via a tag list reference. Shortcut
1196
+ tags are expanded in the list.
1197
+
1198
+ @tags = $exifTool->GetRequestedTags();
1199
+
1200
+ =over 4
1201
+
1202
+ =item Inputs:
1203
+
1204
+ (none)
1205
+
1206
+ =item Return Values:
1207
+
1208
+ List of requested tag keys in the same order that the tags were specified.
1209
+ Note that this list will be empty if tags were not specifically requested
1210
+ (ie. If extracting all tags).
1211
+
1212
+ =back
1213
+
1214
+ =head2 GetValue
1215
+
1216
+ Get the value of a specified tag. The returned value is either the
1217
+ human-readable (PrintConv) value, the converted machine-readable (ValueConv)
1218
+ value, or the original raw (Raw) value. If the value type is not specified,
1219
+ the PrintConv value is returned if the PrintConv option is set, otherwise
1220
+ the ValueConv value is returned. The PrintConv values are same as the
1221
+ values returned by L</ImageInfo> and L</GetInfo> in the tag/value hash
1222
+ unless the PrintConv option is disabled.
1223
+
1224
+ Tags which represent lists of multiple values (as may happen with 'Keywords'
1225
+ for example) are handled specially. In scalar context, the returned
1226
+ PrintConv value for these tags is either a string of values or a list
1227
+ reference (depending on the List option setting), and the ValueConv value is
1228
+ always a list reference. But in list context, L</GetValue> always returns
1229
+ the list itself.
1230
+
1231
+ Note that L</GetValue> requires a case-sensitive tag key as an argument. To
1232
+ retrieve tag information based on a case-insensitive tag name (with an
1233
+ optional group specifier), use L</GetInfo> instead.
1234
+
1235
+ # PrintConv example
1236
+ my $val = $exifTool->GetValue($tag);
1237
+ if (ref $val eq 'SCALAR') {
1238
+ print "$tag = (unprintable value)\n";
1239
+ } else {
1240
+ print "$tag = $val\n";
1241
+ }
1242
+
1243
+ # ValueConv examples
1244
+ my $val = $exifTool->GetValue($tag, 'ValueConv');
1245
+ if (ref $val eq 'ARRAY') {
1246
+ print "$tag is a list of values\n";
1247
+ } elsif (ref $val eq 'SCALAR') {
1248
+ print "$tag represents binary data\n";
1249
+ } else {
1250
+ print "$tag is a simple scalar\n";
1251
+ }
1252
+
1253
+ my @keywords = $exifTool->GetValue('Keywords', 'ValueConv');
1254
+
1255
+ The following options are in effect when L</GetValue> is called:
1256
+
1257
+ Charset, CoordFormat, DateFormat, Escape, Filter, GlobalTimeShift, Lang,
1258
+ List, ListItem, ListSep, PrintConv, QuickTimeUTC (conversion to local time),
1259
+ and StrictDate.
1260
+
1261
+ =over 4
1262
+
1263
+ =item Inputs:
1264
+
1265
+ 0) ExifTool object reference
1266
+
1267
+ 1) Tag key
1268
+
1269
+ 2) [optional] Value type: 'PrintConv', 'ValueConv', 'Both', 'Raw' or
1270
+ 'Rational'
1271
+
1272
+ The default value type is 'PrintConv' if the PrintConv option is set,
1273
+ otherwise the default is 'ValueConv'. A value type of 'Both' returns both
1274
+ ValueConv and PrintConv values as a list. 'Rational' returns the raw
1275
+ rational value as a string fraction for rational types, or undef for other
1276
+ types.
1277
+
1278
+ =item Return Values:
1279
+
1280
+ The value of the specified tag. If the tag represents a list of multiple
1281
+ values and the List option is disabled then PrintConv returns a string of
1282
+ values, otherwise a reference to the list is returned in scalar context.
1283
+ The list itself is returned in list context. (Unless 'Both' values are
1284
+ requested, in which case two list references are returned, regardless of
1285
+ context.) Values may also be scalar references to binary data, or hash
1286
+ references if the L</Struct> option is set.
1287
+
1288
+ Note: It is possible for L</GetValue> to return an undefined ValueConv or
1289
+ PrintConv value (or an empty list in list context) even if the tag exists,
1290
+ since it is possible for these conversions to yield undefined values. And
1291
+ the Rational value will be undefined for any non-rational tag. The Raw
1292
+ value should always exist if the tag exists.
1293
+
1294
+ =back
1295
+
1296
+ =head2 SetNewValue
1297
+
1298
+ Set the new value for a tag. The routine may be called multiple times to
1299
+ set the values of many tags before using L</WriteInfo> to write the new
1300
+ values to an image.
1301
+
1302
+ For list-type tags (like Keywords), either call repeatedly with the same tag
1303
+ name for each value, or call with a reference to the list of values.
1304
+
1305
+ # set a new value for a tag (errors go to STDERR)
1306
+ $success = $exifTool->SetNewValue($tag, $value);
1307
+
1308
+ # set a new value and capture any error message
1309
+ ($success, $errStr) = $exifTool->SetNewValue($tag, $value);
1310
+
1311
+ # delete information for specified tag if it exists in image
1312
+ # (also resets AddValue and DelValue options for this tag)
1313
+ $exifTool->SetNewValue($tag);
1314
+
1315
+ # reset all values from previous calls to SetNewValue()
1316
+ $exifTool->SetNewValue();
1317
+
1318
+ # delete a specific keyword
1319
+ $exifTool->SetNewValue('Keywords', $word, DelValue => 1);
1320
+
1321
+ # set keywords (a list-type tag) with two new values
1322
+ $exifTool->SetNewValue(Keywords => 'word1');
1323
+ $exifTool->SetNewValue(Keywords => 'word2');
1324
+ # equivalent, but set both in one call using an array reference
1325
+ $exifTool->SetNewValue(Keywords => ['word1','word2']);
1326
+
1327
+ # add a keyword without replacing existing keywords in the file
1328
+ $exifTool->SetNewValue(Keywords => $word, AddValue => 1);
1329
+
1330
+ # conditionally add a tag if it didn't exist before,
1331
+ # or replace it if it had a specified value ("old value")
1332
+ $exifTool->SetNewValue(Description => '', DelValue => 1);
1333
+ $exifTool->SetNewValue(Description => 'old value', DelValue => 1);
1334
+ $exifTool->SetNewValue(Description => 'new value');
1335
+
1336
+ # set a tag in a specific group
1337
+ $exifTool->SetNewValue(Headline => $val, Group => 'XMP');
1338
+ $exifTool->SetNewValue('XMP:Headline' => $val); # (equivalent)
1339
+
1340
+ # shift original date/time back by 2.5 hours
1341
+ $exifTool->SetNewValue(DateTimeOriginal => '2:30', Shift => -1);
1342
+
1343
+ # write a tag only if it had a specific value
1344
+ # (the order of the following calls is not significant)
1345
+ $exifTool->SetNewValue(Title => $oldVal, DelValue => 1);
1346
+ $exifTool->SetNewValue(Title => $newVal);
1347
+
1348
+ # write tag by numerical value
1349
+ $exifTool->SetNewValue(Orientation => 6, Type => 'ValueConv');
1350
+ $exifTool->SetNewValue('Orientation#' => 6); # (equivalent)
1351
+
1352
+ # delete all but EXIF tags
1353
+ $exifTool->SetNewValue('*'); # delete all...
1354
+ $exifTool->SetNewValue('EXIF:*', undef, Replace => 2); # ...but EXIF
1355
+
1356
+ # write structured information as a HASH reference
1357
+ $exifTool->SetNewValue('XMP:Flash' => {
1358
+ mode => 'on',
1359
+ fired => 'true',
1360
+ return => 'not'
1361
+ });
1362
+
1363
+ # write structured information as a serialized string
1364
+ $exifTool->SetNewValue('XMP:Flash'=>'{mode=on,fired=true,return=not}');
1365
+
1366
+ (See L<http://owl.phy.queensu.ca/~phil/exiftool/struct.html#Serialize> for
1367
+ a description of the structure serialization technique.)
1368
+
1369
+ =over 4
1370
+
1371
+ =item Inputs:
1372
+
1373
+ 0) ExifTool object reference
1374
+
1375
+ 1) [optional] Tag key or tag name, or undef to clear all new values. The
1376
+ tag name may be prefixed by one or more family 0, 1 or 2 group names with
1377
+ optional leading family numbers, separated by colons (eg. 'EXIF:Artist',
1378
+ 'XMP:Time:*'), which is equivalent to using a Group option argument. Also,
1379
+ a '#' may be appended to the tag name (eg. 'EXIF:Orientation#'), with the
1380
+ same effect as setting Type to 'ValueConv'. Wildcards ('*' and '?') may be
1381
+ used in the tag name to assign multiple tags simultaneously. A tag name of
1382
+ '*' is special when deleting information, and will delete an entire group
1383
+ even if some individual tags in the group are not writable, but only if a
1384
+ single family 0 or 1 group is specified (otherwise the tags are deleted
1385
+ individually). Use L</GetDeleteGroups> to get a list of deletable group
1386
+ names, and see L<Image::ExifTool::TagNames|Image::ExifTool::TagNames> for a
1387
+ complete list of tag names.
1388
+
1389
+ 2) [optional] New value for tag. Undefined to delete tag from file. May be
1390
+ a scalar, scalar reference, list reference to set a list of values, or hash
1391
+ reference for a structure. Integer values may be specified as a hexadecimal
1392
+ string (with a leading '0x'), and simple rational values may be specified in
1393
+ fractional form (eg. '4/10'). Structure tags may be specified either as a
1394
+ hash reference or a serialized string (see the last two examples above).
1395
+
1396
+ 3-N) [optional] SetNewValue option/value pairs (see below).
1397
+
1398
+ =item SetNewValue Options:
1399
+
1400
+ =over 4
1401
+
1402
+ =item AddValue
1403
+
1404
+ Specifies that the value be added to an existing list in a file rather than
1405
+ overwriting. Valid settings are 0 (overwrite any existing tag value), 1
1406
+ (add to an existing list and warn for non-list tags) or 2 (add to existing
1407
+ list and overwrite non-list tags). Default is 0.
1408
+
1409
+ =item DelValue
1410
+
1411
+ Delete existing tag from a file if it has the specified value. For
1412
+ list-type tags this deletes a specified item from the list. For non-list
1413
+ tags this may be used to conditionally replace a tag by providing a new
1414
+ value in a separate call to L<SetNewValue> (see examples above). For
1415
+ structured tags, the entire structure is deleted/replaced only if all of the
1416
+ specified fields match the existing structure. Option values are 0 or 1.
1417
+ Default is 0.
1418
+
1419
+ =item EditGroup
1420
+
1421
+ Create tags in existing groups only. Don't create new group. Valid values
1422
+ are 0 and 1. Effectively removes the 'g' from the ExifTool WriteMode option
1423
+ for this tag only. Default is 0.
1424
+
1425
+ =item EditOnly
1426
+
1427
+ Edit tag only if it already exists. Don't create new tag. Valid values are
1428
+ 0 and 1. Effectively removes the 'c' from the ExifTool WriteMode option for
1429
+ this tag only. Default is 0.
1430
+
1431
+ =item Group
1432
+
1433
+ Specifies group name where tag should be written. This option is superseded
1434
+ by any group specified in the tag name. If not specified, tag is written to
1435
+ highest priority group as specified by L</SetNewGroups>. May be one or more
1436
+ family 0, 1 or 2 groups with optional leading family number, separated by
1437
+ colons. Case is not significant.
1438
+
1439
+ =item NoFlat
1440
+
1441
+ Treat flattened tags as 'unsafe'.
1442
+
1443
+ =item NoShortcut
1444
+
1445
+ Disables default behaviour of looking up tag in shortcuts if not found
1446
+ otherwise.
1447
+
1448
+ =item Protected
1449
+
1450
+ Bit mask for tag protection levels to write. Bit 0x01 allows writing of
1451
+ 'unsafe' tags (ie. tags not copied automatically via
1452
+ L</SetNewValuesFromFile>). Bit 0x02 allows writing of 'protected' tags, and
1453
+ should only be used internally by ExifTool. See
1454
+ L<Image::ExifTool::TagNames|Image::ExifTool::TagNames>, for a list of tag
1455
+ names indicating 'unsafe' and 'protected' tags. Default is 0.
1456
+
1457
+ =item ProtectSaved
1458
+
1459
+ Avoid setting new values which were saved after the Nth call to
1460
+ L</SaveNewValues>. Has no effect on unsaved values, or values saved before
1461
+ Nth call. Option value is N. Default is undef.
1462
+
1463
+ =item Replace
1464
+
1465
+ Flag to replace the previous new values for this tag (ie. replace the values
1466
+ set in previous calls to L</SetNewValue>). This option is most commonly
1467
+ used to replace previously-set new values for list-type tags. Valid values
1468
+ are 0 (set new value normally -- adds to new values for list-type tags), 1
1469
+ (reset previous new values for this tag and replace with the specified new
1470
+ value) or 2 (reset previous new values only).
1471
+
1472
+ =item Shift
1473
+
1474
+ Shift the tag by the specified value. Currently only date/time tags and
1475
+ tags with numerical values may be shifted. Undefined for no shift, 1 for a
1476
+ positive shift, or -1 for a negative shift. A value of 0 causes a positive
1477
+ shift to be applied if the tag is shiftable and AddValue is set, or a
1478
+ negative shift for date/time tags only if DelValue is set. Default is undef.
1479
+ See L<Image::ExifTool::Shift.pl|Image::ExifTool::Shift.pl> for more
1480
+ information.
1481
+
1482
+ =item Type
1483
+
1484
+ The type of value being set. Valid values are PrintConv, ValueConv or Raw.
1485
+ Default is PrintConv if the L</PrintConv> Option is set, otherwise
1486
+ ValueConv.
1487
+
1488
+ =back
1489
+
1490
+ =item Return Values:
1491
+
1492
+ In scalar context, returns the number of tags set and error messages are
1493
+ printed to STDERR. In list context, returns the number of tags set, and the
1494
+ error string (which is undefined if there was no error).
1495
+
1496
+ =item Notes:
1497
+
1498
+ When deleting groups of tags, the Replace option may be used to exclude
1499
+ specific groups from a mass delete. However, this technique may not be used
1500
+ to exclude individual tags from a group delete (unless a family 2 group was
1501
+ specified in the delete). Instead, use L</SetNewValuesFromFile> to recover
1502
+ the values of individual tags after deleting a group.
1503
+
1504
+ When deleting all tags from a JPEG image, the APP14 "Adobe" information is
1505
+ not deleted by default because doing so may affect the appearance of the
1506
+ image. However, this information may be deleted by specifying it
1507
+ explicitly, either by group (with 'Adobe:*') or as a block (with 'Adobe').
1508
+
1509
+ =back
1510
+
1511
+ The following ExifTool options are effective in the call to L</SetNewValue>:
1512
+
1513
+ Charset, DateFormat, Escape, IgnoreMinorErrors, Lang, ListSep, ListSplit,
1514
+ PrintConv, QuickTimeUTC, StrictDate, Verbose and WriteMode.
1515
+
1516
+ =head2 GetNewValue
1517
+
1518
+ Get the new Raw value for a tag. This is the value set by L</SetNewValue>
1519
+ this is queued to be written to file. List-type tags may return multiple
1520
+ values in list context.
1521
+
1522
+ $rawVal = $exifTool->GetNewValue($tag);
1523
+
1524
+ @rawVals = $exifTool->GetNewValue($tag);
1525
+
1526
+ =over 4
1527
+
1528
+ =item Inputs:
1529
+
1530
+ 0) ExifTool object reference
1531
+
1532
+ 1) Tag name (case sensitive, may be prefixed by family 0 or 1 group name)
1533
+
1534
+ =item Return Values:
1535
+
1536
+ List of new Raw tag values, or first value in list when called in scalar
1537
+ context. The list may be empty either if the tag isn't being written, or if
1538
+ it is being deleted (ie. if L</SetNewValue> was called without a value).
1539
+
1540
+ =back
1541
+
1542
+ =head2 SetNewValuesFromFile
1543
+
1544
+ A very powerful routine that sets new values for tags from information found
1545
+ in a specified file.
1546
+
1547
+ # set new values from all information in a file...
1548
+ my $info = $exifTool->SetNewValuesFromFile($srcFile);
1549
+ # ...then write these values to another image
1550
+ my $result = $exifTool->WriteInfo($file2, $outFile);
1551
+
1552
+ # set all new values, preserving original groups
1553
+ $exifTool->SetNewValuesFromFile($srcFile, '*:*');
1554
+
1555
+ # set specific information
1556
+ $exifTool->SetNewValuesFromFile($srcFile, @tags);
1557
+
1558
+ # set new value from a different tag in specific group
1559
+ $exifTool->SetNewValuesFromFile($fp, 'IPTC:Keywords>XMP-dc:Subject');
1560
+
1561
+ # add all IPTC keywords to XMP subject list
1562
+ $exifTool->SetNewValuesFromFile($fp, 'IPTC:Keywords+>XMP-dc:Subject');
1563
+
1564
+ # set new value from an expression involving other tags
1565
+ $exifTool->SetNewValuesFromFile($file,
1566
+ 'Comment<ISO=$ISO Aperture=$aperture Exposure=$shutterSpeed');
1567
+
1568
+ # set keywords list from the values of multiple tags
1569
+ $exifTool->SetNewValuesFromFile($file, { Replace => 0 },
1570
+ 'keywords<xmp:subject', 'keywords<filename');
1571
+
1572
+ # copy all EXIF information, preserving the original IFD
1573
+ # (without '>*.*' tags would be copied to the preferred EXIF IFD)
1574
+ $exifTool->SetNewValuesFromFile($file, 'EXIF:*>*:*');
1575
+
1576
+ # copy all tags with names starting with "gps" (note: this is
1577
+ # different than "gps:*" because it will also copy XMP GPS tags)
1578
+ $exifTool->SetNewValuesFromFile($file, 'gps*');
1579
+
1580
+ # set FileName from Model, translating questionable characters
1581
+ $exifTool->SetNewValuesFromFile($file,
1582
+ 'filename<${model; tr(/\\\\?*:|"><)(_) }.jpg');
1583
+
1584
+ =over 4
1585
+
1586
+ =item Inputs:
1587
+
1588
+ 0) ExifTool object reference
1589
+
1590
+ 1) File name, file reference, or scalar reference
1591
+
1592
+ 2-N) [optional] List of tag names to set or options hash references. All
1593
+ writable tags are set if none are specified. The tag names are not case
1594
+ sensitive, and may be prefixed by one or more family 0, 1 or 2 group names with
1595
+ optional leading family numbers, separated by colons (eg. 'exif:iso'). A
1596
+ leading '-' indicates tags to be excluded (eg. '-comment'), or a trailing '#'
1597
+ causes the ValueConv value to be copied (same as setting the Type option to
1598
+ 'ValueConv' for this tag only). Wildcards ('*' and '?') may be used in the tag
1599
+ name. A tag name of '*' is commonly used when a group is specified to copy all
1600
+ tags in the group (eg. 'XMP:*'). A special feature allows tag names of the form
1601
+ 'DSTTAGE<lt>SRCTAG' (or 'SRCTAGE<gt>DSTTAG') to be specified to copy information
1602
+ to a tag with a different name or a specified group. Both 'SRCTAG' and 'DSTTAG'
1603
+ may contain wildcards and/or be prefixed by a group name (eg.
1604
+ 'fileModifyDateE<lt>modifyDate' or 'xmp:*E<lt>*'), and/or suffixed by a '#' to
1605
+ disable print conversion. Copied tags may also be added or deleted from a list
1606
+ with arguments of the form 'DSTTAG+E<lt>SRCTAG' or 'DSTTAG-E<lt>SRCTAG'. Tags
1607
+ are evaluated in order, so exclusions apply only to tags included earlier in the
1608
+ list. An extension of this feature allows the tag value to be set from an
1609
+ expression containing tag names with leading '$' symbols (eg. 'CommentE<lt>the
1610
+ file is $filename'). Braces '{}' may be used around the tag name to separate it
1611
+ from subsequent text, and a '$$' is used to to represent a '$' symbol. The
1612
+ behaviour for missing tags in expressions is defined by the L</MissingTagValue>
1613
+ option. The tag value may be modified via changes to the default input variable
1614
+ ($_) in Perl expressions placed inside the braces and after a semicolon
1615
+ following the tag name. Braces within the expression must be balanced.
1616
+ Multiple options hash references may be passed to set different options for
1617
+ different tags. Options apply to subsequent tags in the argument list.
1618
+
1619
+ By default, this routine will commute information between same-named tags in
1620
+ different groups, allowing information to be translated between images with
1621
+ different formats. This behaviour may be modified by specifying a group
1622
+ name for extracted tags (even if '*' is used as a group name), in which case
1623
+ the information is written to the original group, unless redirected to a
1624
+ different group. When '*' is used for a group name, by default the family 1
1625
+ group of the original tag is preserved, but a different family may be specified
1626
+ with a leading family number. (For example, specifying '*:*' copies all
1627
+ information while preserving the original family 1 groups, while '0*:*'
1628
+ preserves the family 0 group.)
1629
+
1630
+ =item SetNewValuesFromFile Options:
1631
+
1632
+ The options are the same was for L</SetNewValue>, and are passed directly
1633
+ to L</SetNewValue> internally, with a few exceptions:
1634
+
1635
+ - The Replace option defaults to 1 instead of 0 as with L</SetNewValue>.
1636
+
1637
+ - The AddValue or DelValue option is set for individual tags if '+>' or '->'
1638
+ (or '+E<lt>' or '-E<lt>') are used.
1639
+
1640
+ - The Group option is set for tags where a group name is given.
1641
+
1642
+ - The Protected flag is set to 1 for individually specified tags.
1643
+
1644
+ - The Type option also applies to extracted tags.
1645
+
1646
+ =item Return Values:
1647
+
1648
+ A hash of information that was set successfully. May include Warning or
1649
+ Error entries if there were problems reading the input file.
1650
+
1651
+ =item Notes:
1652
+
1653
+ The PrintConv option applies to this routine, but it normally should be left
1654
+ on to provide more reliable transfer of information between groups.
1655
+
1656
+ If a preview image exists, it is not copied. The preview image must be
1657
+ transferred separately if desired, in a separate call to L</WriteInfo>
1658
+
1659
+ When simply copying all information between files of the same type, it is
1660
+ usually desirable to preserve the original groups by specifying '*:*' for
1661
+ the tags to set.
1662
+
1663
+ The L</Duplicates> option is always in effect for tags extracted from the
1664
+ source file using this routine.
1665
+
1666
+ The L</Struct> option is enabled by default for tags extracted by this
1667
+ routine. This allows the hierarchy of complex structures to be preserved
1668
+ when copying, but the Struct option may be set to 0 to override this
1669
+ behaviour and copy as flattened tags instead.
1670
+
1671
+ =back
1672
+
1673
+ =head2 CountNewValues
1674
+
1675
+ Return the total number of new values set.
1676
+
1677
+ $numSet = $exifTool->CountNewValues();
1678
+ ($numSet, $numPseudo) = $exifTool->CountNewValues();
1679
+
1680
+ =over 4
1681
+
1682
+ =item Inputs:
1683
+
1684
+ 0) ExifTool object reference
1685
+
1686
+ =item Return Values:
1687
+
1688
+ In scalar context, returns the total number of tags with new values set. In
1689
+ list context, also returns the number of "pseudo" tag values which have been
1690
+ set. "Pseudo" tags are tags like FileName and FileModifyDate which are not
1691
+ contained within the file and can be changed without rewriting the file.
1692
+
1693
+ =back
1694
+
1695
+ =head2 SaveNewValues
1696
+
1697
+ Save state of new values to be later restored by L</RestoreNewValues>.
1698
+
1699
+ $exifTool->SaveNewValues(); # save state of new values
1700
+ $exifTool->SetNewValue(ISO => 100); # set new value for ISO
1701
+ $exifTool->WriteInfo($src, $dst1); # write ISO + previous new values
1702
+ $exifTool->RestoreNewValues(); # restore previous new values
1703
+ $exifTool->WriteInfo($src, $dst2); # write previous new values only
1704
+
1705
+ =over 4
1706
+
1707
+ =item Inputs:
1708
+
1709
+ 0) ExifTool object reference
1710
+
1711
+ =item Return Value:
1712
+
1713
+ Count of the number of times this routine has been called (N) since the last
1714
+ time the new values were reset.
1715
+
1716
+ =back
1717
+
1718
+ =head2 RestoreNewValues
1719
+
1720
+ Restore new values to the settings that existed when L</SaveNewValues> was
1721
+ last called. May be called repeatedly after a single call to
1722
+ L</SaveNewValues>. See L</SaveNewValues> above for an example.
1723
+
1724
+ =over 4
1725
+
1726
+ =item Inputs:
1727
+
1728
+ 0) ExifTool object reference
1729
+
1730
+ =item Return Value:
1731
+
1732
+ None.
1733
+
1734
+ =back
1735
+
1736
+ =head2 SetFileModifyDate
1737
+
1738
+ Write the filesystem modification or creation time from the new value of the
1739
+ FileModifyDate or FileCreateDate tag.
1740
+
1741
+ $exifTool->SetNewValue(FileModifyDate => '2000:01:02 03:04:05-05:00',
1742
+ Protected => 1);
1743
+ $result = $exifTool->SetFileModifyDate($file);
1744
+
1745
+ =over 4
1746
+
1747
+ =item Inputs:
1748
+
1749
+ 0) ExifTool object reference
1750
+
1751
+ 1) File name
1752
+
1753
+ 2) [optional] Base time if applying shift (days before $^T)
1754
+
1755
+ 3) [optional] Tag to write: 'FileModifyDate' (default), or 'FileCreateDate'
1756
+
1757
+ =item Return Value:
1758
+
1759
+ 1 if the time was changed, 0 if nothing was done, or -1 if there was an
1760
+ error setting the time.
1761
+
1762
+ =item Notes:
1763
+
1764
+ Equivalent to, but more efficient than calling L</WriteInfo> when only the
1765
+ FileModifyDate or FileCreateDate tag has been set. If a timezone is not
1766
+ specified, local time is assumed. When shifting, the time of the original
1767
+ file is used unless the optional base time is specified.
1768
+
1769
+ The ability to write FileCreateDate is currently restricted to Windows
1770
+ systems only.
1771
+
1772
+ =back
1773
+
1774
+ =head2 SetFileName
1775
+
1776
+ Set the file name and directory, or create a hard link. If not specified,
1777
+ the new file name is derived from the new values of the FileName and
1778
+ Directory tags, or from the HardLink tag if creating a link. If the
1779
+ FileName tag contains a '/', then the file is renamed into a new directory.
1780
+ If FileName ends with '/', then it is taken as a directory name and the file
1781
+ is moved into the new directory. The new value for the Directory tag takes
1782
+ precedence over any directory specified in FileName.
1783
+
1784
+ $result = $exifTool->SetFileName($file);
1785
+ $result = $exifTool->SetFileName($file, $newName);
1786
+
1787
+ =over 4
1788
+
1789
+ =item Inputs:
1790
+
1791
+ 0) ExifTool object reference
1792
+
1793
+ 1) Current file name
1794
+
1795
+ 2) [optional] New file name
1796
+
1797
+ 3) [optional] 'Link' to create a hard link instead of renaming the file, or
1798
+ 'Test' to test renaming feature by printing the old and new names instead of
1799
+ changing anything.
1800
+
1801
+ =item Return Value:
1802
+
1803
+ 1 if the file name or directory was changed, 0 if nothing was done, or -1 if
1804
+ there was an error renaming the file.
1805
+
1806
+ =item Notes:
1807
+
1808
+ Will not overwrite existing files. New directories are created as necessary.
1809
+
1810
+ =back
1811
+
1812
+ =head2 SetNewGroups
1813
+
1814
+ Set the order of the preferred groups when adding new information. In
1815
+ subsequent calls to L</SetNewValue>, new information will be created in the
1816
+ first valid group of this list. This has an impact only if the group is not
1817
+ specified when calling L</SetNewValue> and if the tag name exists in more
1818
+ than one group. The default order is EXIF, IPTC then XMP. Any family 0
1819
+ group name may be used. Case is not significant.
1820
+
1821
+ $exifTool->SetNewGroups('XMP','EXIF','IPTC');
1822
+
1823
+ =over 4
1824
+
1825
+ =item Inputs:
1826
+
1827
+ 0) ExifTool object reference
1828
+
1829
+ 1-N) Groups in order of priority. If no groups are specified, the priorities
1830
+ are reset to the defaults.
1831
+
1832
+ =item Return Value:
1833
+
1834
+ None.
1835
+
1836
+ =back
1837
+
1838
+ =head2 GetNewGroups
1839
+
1840
+ Get current group priority list.
1841
+
1842
+ @groups = $exifTool->GetNewGroups();
1843
+
1844
+ =over 4
1845
+
1846
+ =item Inputs:
1847
+
1848
+ 0) ExifTool object reference
1849
+
1850
+ =item Return Values:
1851
+
1852
+ List of group names in order of write priority. Highest priority first.
1853
+
1854
+ =back
1855
+
1856
+ =head2 GetTagID
1857
+
1858
+ Get the ID for the specified tag. The ID is the IFD tag number in EXIF
1859
+ information, the property name in XMP information, or the data offset in a
1860
+ binary data block. For some tags, such as Composite tags where there is no
1861
+ ID, an empty string is returned. In list context, also returns a language
1862
+ code for the tag if available and different from the default language (eg.
1863
+ with alternate language entries for XMP "lang-alt" tags).
1864
+
1865
+ $id = $exifTool->GetTagID($tag);
1866
+ ($id, $lang) = $exifTool->GetTagID($tag);
1867
+
1868
+ =over 4
1869
+
1870
+ =item Inputs:
1871
+
1872
+ 0) ExifTool object reference
1873
+
1874
+ 1) Tag key
1875
+
1876
+ =item Return Values:
1877
+
1878
+ In scalar context, returns the tag ID or '' if there is no ID for this tag.
1879
+ In list context, returns the tag ID (or '') and the language code (or
1880
+ undef).
1881
+
1882
+ =back
1883
+
1884
+ =head2 GetDescription
1885
+
1886
+ Get description for specified tag. This function will always return a
1887
+ defined value. In the case where the description doesn't exist, one is
1888
+ generated from the tag name.
1889
+
1890
+ =over 4
1891
+
1892
+ =item Inputs:
1893
+
1894
+ 0) ExifTool object reference
1895
+
1896
+ 1) Tag key
1897
+
1898
+ =item Return Values:
1899
+
1900
+ A description for the specified tag.
1901
+
1902
+ =back
1903
+
1904
+ =head2 GetGroup
1905
+
1906
+ Get group name(s) for a specified tag.
1907
+
1908
+ # return family 0 group name (eg. 'EXIF');
1909
+ $group = $exifTool->GetGroup($tag, 0);
1910
+
1911
+ # return all groups (eg. qw{EXIF IFD0 Author Main})
1912
+ @groups = $exifTool->GetGroup($tag);
1913
+
1914
+ # return groups as a string (eg. 'Main:IFD0:Author')
1915
+ $group = $exifTool->GetGroup($tag, ':3:1:2');
1916
+
1917
+ # return groups as a simplified string (eg. 'IFD0:Author')
1918
+ $group = $exifTool->GetGroup($tag, '3:1:2');
1919
+
1920
+ =over 4
1921
+
1922
+ =item Inputs:
1923
+
1924
+ 0) ExifTool object reference
1925
+
1926
+ 1) Tag key
1927
+
1928
+ 2) [optional] Group family number, or string of numbers separated by colons
1929
+
1930
+ =item Return Values:
1931
+
1932
+ Group name (or '' if tag has no group). If no group family is specified,
1933
+ L</GetGroup> returns the name of the group in family 0 when called in scalar
1934
+ context, or the names of groups for all families in list context. Returns a
1935
+ string of group names separated by colons if the input group family contains
1936
+ a colon. The string is simplified to remove a leading 'Main:' and adjacent
1937
+ identical group names unless the family string begins with a colon.
1938
+
1939
+ =item Notes:
1940
+
1941
+ The group family numbers are currently available:
1942
+
1943
+ 0) Information Type (eg. EXIF, XMP, IPTC)
1944
+ 1) Specific Location (eg. IFD0, XMP-dc)
1945
+ 2) Category (eg. Author, Time)
1946
+ 3) Document Number (eg. Main, Doc1, Doc3-2)
1947
+ 4) Instance Number (eg. Copy1, Copy2, Copy3...)
1948
+
1949
+ Families 0 and 1 are based on the file structure, and are similar except
1950
+ that family 1 is more specific and sub-divides some groups to give more
1951
+ detail about the specific location where the information was found. For
1952
+ example, the EXIF group is split up based on the specific IFD (Image File
1953
+ Directory), the MakerNotes group is divided into groups for each
1954
+ manufacturer, and the XMP group is separated based on the XMP namespace
1955
+ prefix. Note that only common XMP namespaces are listed in the
1956
+ L<GetAllGroups documentation|/GetAllGroups [static]>, but additional
1957
+ namespaces may be present in some XMP data. Also note that the 'XMP-xmp...'
1958
+ group names may appear in the older form 'XMP-xap...' since these names
1959
+ evolved as the XMP standard was developed. The ICC_Profile group is broken
1960
+ down to give information about the specific ICC_Profile tag from which
1961
+ multiple values were extracted. As well, information extracted from the
1962
+ ICC_Profile header is separated into the ICC-header group.
1963
+
1964
+ Family 2 classifies information based on the logical category to which the
1965
+ information refers.
1966
+
1967
+ Family 3 gives the document number for tags extracted from embedded
1968
+ documents, or 'Main' for tags from the main document. (See the
1969
+ L</ExtractEmbedded> option for extracting tags from embedded documents.)
1970
+ Nested sub-documents (if they exist) are indicated by numbers separated with
1971
+ dashes in the group name, to an arbitrary depth. (eg. 'Doc2-3-1' is the 1st
1972
+ sub-sub-document of the 3rd sub-document of the 2nd embedded document of the
1973
+ main file.)
1974
+
1975
+ Family 4 provides a method for differentiating tags when multiple tags exist
1976
+ with the same name in the same location. The primary instance of a tag (the
1977
+ tag extracted when the Duplicates option is disabled and no group is
1978
+ specified) has no family 4 group name, but additional instances have have
1979
+ family 4 group names of 'Copy1', 'Copy2', 'Copy3', etc.
1980
+
1981
+ See L</GetAllGroups [static]> for complete lists of group names.
1982
+
1983
+ =back
1984
+
1985
+ =head2 GetGroups
1986
+
1987
+ Get list of group names that exist in the specified information.
1988
+
1989
+ @groups = $exifTool->GetGroups($info, 2);
1990
+ @groups = $exifTool->GetGroups('3:1');
1991
+
1992
+ =over 4
1993
+
1994
+ =item Inputs:
1995
+
1996
+ 0) ExifTool object reference
1997
+
1998
+ 1) [optional] Info hash ref (default is all extracted info)
1999
+
2000
+ 2) [optional] Group family number, or string of numbers (default 0)
2001
+
2002
+ =item Return Values:
2003
+
2004
+ List of group names in alphabetical order. If information hash is not
2005
+ specified, the group names are returned for all extracted information. See
2006
+ L</GetGroup> for an description of family numbers and family number strings.
2007
+
2008
+ =back
2009
+
2010
+ =head2 BuildCompositeTags
2011
+
2012
+ Builds composite tags from required tags. The composite tags are
2013
+ convenience tags which are derived from the values of other tags. This
2014
+ routine is called automatically by L</ImageInfo> and L</ExtractInfo> if the
2015
+ Composite option is set.
2016
+
2017
+ =over 4
2018
+
2019
+ =item Inputs:
2020
+
2021
+ 0) ExifTool object reference
2022
+
2023
+ =item Return Values:
2024
+
2025
+ (none)
2026
+
2027
+ =item Notes:
2028
+
2029
+ Tag values are calculated in alphabetical order unless a tag Require's or
2030
+ Desire's another composite tag, in which case the calculation is deferred
2031
+ until after the other tag is calculated.
2032
+
2033
+ Composite tags may need to read data from the image for their value to be
2034
+ determined, and for these L</BuildCompositeTags> must be called while the
2035
+ image is available. This is only a problem if L</ImageInfo> is called with
2036
+ a filename (as opposed to a file reference or scalar reference) since in
2037
+ this case the file is closed before L</ImageInfo> returns. Here the
2038
+ Composite option may be used so that L</BuildCompositeTags> is called from
2039
+ within L</ImageInfo>, before the file is closed.
2040
+
2041
+ =back
2042
+
2043
+ =head2 GetTagName [static]
2044
+
2045
+ Get name of tag from tag key. This is a convenience function that
2046
+ strips the embedded instance number, if it exists, from the tag key.
2047
+
2048
+ Note: "static" in the heading above indicates that the function does not
2049
+ require an ExifTool object reference as the first argument. All functions
2050
+ documented below are also static.
2051
+
2052
+ $tagName = Image::ExifTool::GetTagName($tag);
2053
+
2054
+ =over 4
2055
+
2056
+ =item Inputs:
2057
+
2058
+ 0) Tag key
2059
+
2060
+ =item Return Value:
2061
+
2062
+ Tag name. This is the same as the tag key but has the instance number
2063
+ removed.
2064
+
2065
+ =back
2066
+
2067
+ =head2 GetShortcuts [static]
2068
+
2069
+ Get a list of shortcut tags.
2070
+
2071
+ =over 4
2072
+
2073
+ =item Inputs:
2074
+
2075
+ (none)
2076
+
2077
+ =item Return Values:
2078
+
2079
+ List of shortcut tags (as defined in Image::ExifTool::Shortcuts).
2080
+
2081
+ =back
2082
+
2083
+ =head2 GetAllTags [static]
2084
+
2085
+ Get list of all available tag names.
2086
+
2087
+ @tagList = Image::ExifTool::GetAllTags($group);
2088
+
2089
+ =over 4
2090
+
2091
+ =item Inputs:
2092
+
2093
+ 0) [optional] Group name, or string of group names separated by colons
2094
+
2095
+ =item Return Values:
2096
+
2097
+ A list of all available tags in alphabetical order, or all tags in a
2098
+ specified group or intersection of groups. The group name is case
2099
+ insensitive, and any group in families 0-2 may be used except for EXIF
2100
+ family 1 groups (ie. the specific IFD).
2101
+
2102
+ =back
2103
+
2104
+ =head2 GetWritableTags [static]
2105
+
2106
+ Get list of all writable tag names.
2107
+
2108
+ @tagList = Image::ExifTool::GetWritableTags($group);
2109
+
2110
+ =over 4
2111
+
2112
+ =item Inputs:
2113
+
2114
+ 0) [optional] Group name, or string of group names separated by colons
2115
+
2116
+ =item Return Values:
2117
+
2118
+ A list of all writable tags in alphabetical order. These are the tags for
2119
+ which values may be set through L</SetNewValue>. If a group name is given,
2120
+ returns only writable tags in specified group(s). The group name is case
2121
+ insensitive, and any group in families 0-2 may be used except for EXIF
2122
+ family 1 groups (ie. the specific IFD).
2123
+
2124
+ =back
2125
+
2126
+ =head2 GetAllGroups [static]
2127
+
2128
+ Get list of all group names in specified family.
2129
+
2130
+ @groupList = Image::ExifTool::GetAllGroups($family);
2131
+
2132
+ =over 4
2133
+
2134
+ =item Inputs:
2135
+
2136
+ 0) Group family number (0-4)
2137
+
2138
+ =item Return Values:
2139
+
2140
+ A list of all groups in the specified family in alphabetical order.
2141
+
2142
+ =back
2143
+
2144
+ Here is a complete list of groups for each of these families:
2145
+
2146
+ =over 4
2147
+
2148
+ =item Family 0 (Information Type):
2149
+
2150
+ AFCP, AIFF, APE, APP0, APP1, APP11, APP12, APP13, APP14, APP15, APP4, APP5,
2151
+ APP6, APP8, ASF, Audible, CanonVRD, Composite, DICOM, DNG, DV, DjVu, Ducky,
2152
+ EXE, EXIF, ExifTool, FLAC, FLIR, File, Flash, FlashPix, Font, FotoStation,
2153
+ GIF, GIMP, GeoTiff, H264, HTML, ICC_Profile, ID3, IPTC, ISO, ITC, JFIF,
2154
+ JPEG, Jpeg2000, LNK, Leaf, Lytro, M2TS, MIE, MIFF, MNG, MOI, MPC, MPEG, MPF,
2155
+ MXF, MakerNotes, Matroska, Meta, Ogg, OpenEXR, Opus, PDF, PICT, PLIST, PNG,
2156
+ PSP, Palm, PanasonicRaw, PhotoCD, PhotoMechanic, Photoshop, PostScript,
2157
+ PrintIM, QuickTime, RAF, RIFF, RSRC, RTF, Radiance, Rawzor, Real, SVG,
2158
+ SigmaRaw, Stim, Theora, Torrent, VCard, Vorbis, XML, XMP, ZIP
2159
+
2160
+ =item Family 1 (Specific Location):
2161
+
2162
+ AC3, AFCP, AIFF, APE, ASF, AVI1, Adobe, AdobeCM, AdobeDNG, Apple, Audible,
2163
+ CIFF, Canon, CanonCustom, CanonRaw, CanonVRD, Casio, Chapter#, Composite,
2164
+ DICOM, DJI, DNG, DV, DjVu, DjVu-Meta, Ducky, EPPIM, EXE, EXIF, ExifIFD,
2165
+ ExifTool, FLAC, FLIR, File, Flash, FlashPix, Font, FotoStation, FujiFilm,
2166
+ FujiIFD, GE, GIF, GIMP, GPS, GeoTiff, GlobParamIFD, GraphConv, H264, HP,
2167
+ HTC, HTML, HTML-dc, HTML-ncc, HTML-office, HTML-prod, HTML-vw96, HTTP-equiv,
2168
+ ICC-chrm, ICC-clrt, ICC-header, ICC-meas, ICC-meta, ICC-view, ICC_Profile,
2169
+ ICC_Profile#, ID3, ID3v1, ID3v1_Enh, ID3v2_2, ID3v2_3, ID3v2_4, IFD0, IFD1,
2170
+ IPTC, IPTC#, ISO, ITC, InteropIFD, JFIF, JPEG, JPEG-HDR, JVC, Jpeg2000,
2171
+ KDC_IFD, Kodak, KodakBordersIFD, KodakEffectsIFD, KodakIFD, KyoceraRaw, LNK,
2172
+ Leaf, LeafSubIFD, Leica, Lytro, M2TS, MAC, MIE-Audio, MIE-Camera, MIE-Canon,
2173
+ MIE-Doc, MIE-Extender, MIE-Flash, MIE-GPS, MIE-Geo, MIE-Image, MIE-Lens,
2174
+ MIE-Main, MIE-MakerNotes, MIE-Meta, MIE-Orient, MIE-Preview, MIE-Thumbnail,
2175
+ MIE-UTM, MIE-Unknown, MIE-Video, MIFF, MNG, MOBI, MOI, MPC, MPEG, MPF0,
2176
+ MPImage, MXF, MacOS, MakerNotes, MakerUnknown, Matroska, MediaJukebox,
2177
+ MetaIFD, Microsoft, Minolta, MinoltaRaw, Motorola, NITF, Nikon,
2178
+ NikonCapture, NikonCustom, NikonScan, Nintendo, Ocad, Ogg, Olympus, OpenEXR,
2179
+ Opus, PDF, PICT, PNG, PNG-pHYs, PSP, Palm, Panasonic, PanasonicRaw, Pentax,
2180
+ PhaseOne, PhotoCD, PhotoMechanic, Photoshop, PictureInfo, PostScript,
2181
+ PreviewIFD, PrintIM, ProfileIFD, Qualcomm, QuickTime, RAF, RAF2, RIFF,
2182
+ RMETA, RSRC, RTF, Radiance, Rawzor, Real, Real-CONT, Real-MDPR, Real-PROP,
2183
+ Real-RA3, Real-RA4, Real-RA5, Real-RJMD, Reconyx, Ricoh, SPIFF, SR2,
2184
+ SR2DataIFD, SR2SubIFD, SRF#, SVG, Samsung, Sanyo, Scalado, Sigma, SigmaRaw,
2185
+ Sony, SonyIDC, Stim, SubIFD, System, Theora, Torrent, Track#, VCalendar,
2186
+ VCard, Version0, Vorbis, XML, XMP, XMP-DICOM, XMP-GPano, XMP-MP, XMP-MP1,
2187
+ XMP-PixelLive, XMP-aas, XMP-acdsee, XMP-album, XMP-apple-fi, XMP-aux,
2188
+ XMP-cc, XMP-cell, XMP-creatorAtom, XMP-crs, XMP-dc, XMP-dex, XMP-digiKam,
2189
+ XMP-dwc, XMP-exif, XMP-exifEX, XMP-expressionmedia, XMP-extensis, XMP-fpv,
2190
+ XMP-getty, XMP-ics, XMP-iptcCore, XMP-iptcExt, XMP-lr, XMP-mediapro,
2191
+ XMP-microsoft, XMP-mwg-coll, XMP-mwg-kw, XMP-mwg-rs, XMP-pdf, XMP-pdfx,
2192
+ XMP-photomech, XMP-photoshop, XMP-plus, XMP-pmi, XMP-prism, XMP-prl,
2193
+ XMP-prm, XMP-pur, XMP-rdf, XMP-swf, XMP-tiff, XMP-x, XMP-xmp, XMP-xmpBJ,
2194
+ XMP-xmpDM, XMP-xmpMM, XMP-xmpNote, XMP-xmpPLUS, XMP-xmpRights, XMP-xmpTPg,
2195
+ ZIP
2196
+
2197
+ =item Family 2 (Category):
2198
+
2199
+ Audio, Author, Camera, Document, ExifTool, Image, Location, Other, Preview,
2200
+ Printing, Time, Unknown, Video
2201
+
2202
+ =item Family 3 (Document Number):
2203
+
2204
+ Doc#, Main
2205
+
2206
+ =item Family 4 (Instance Number):
2207
+
2208
+ Copy#
2209
+
2210
+ =back
2211
+
2212
+ =head2 GetDeleteGroups [static]
2213
+
2214
+ Get list of all deletable group names.
2215
+
2216
+ @delGroups = Image::ExifTool::GetDeleteGroups();
2217
+
2218
+ =over 4
2219
+
2220
+ =item Inputs:
2221
+
2222
+ None.
2223
+
2224
+ =item Return Values:
2225
+
2226
+ A list of deletable group names in alphabetical order. The current list of
2227
+ deletable group names is:
2228
+
2229
+ AFCP, APP0, APP1, APP10, APP11, APP12, APP13, APP14, APP15, APP2, APP3,
2230
+ APP4, APP5, APP6, APP7, APP8, APP9, Adobe, CIFF, CanonVRD, Ducky, EXIF,
2231
+ ExifIFD, File, FlashPix, FotoStation, GPS, GlobParamIFD, ICC_Profile, IFD0,
2232
+ IFD1, IPTC, InteropIFD, JFIF, Jpeg2000, MIE, MPF, MakerNotes, Meta, MetaIFD,
2233
+ NikonCapture, PDF, PDF-update, PNG, PhotoMechanic, Photoshop, PrintIM,
2234
+ RMETA, RSRC, SubIFD, Trailer, XML, XML-*, XMP, XMP-*
2235
+
2236
+ All names in this list are either family 0 or family 1 group names, with the
2237
+ exception of 'Trailer' which allows all trailers in JPEG and TIFF-format
2238
+ images to be deleted at once, including unknown trailers. To schedule a
2239
+ group for deletion, call L</SetNewValue> with an undefined value and a tag
2240
+ name like 'Trailer:*'.
2241
+
2242
+ Note that the JPEG "APP" groups are special, and are used only to delete
2243
+ application segments which are not associated with another deletable group.
2244
+ For example, deleting 'APP14:*' will delete other APP14 segments, but not
2245
+ the APP14 "Adobe" segment.
2246
+
2247
+ =back
2248
+
2249
+ =head2 GetFileType [static]
2250
+
2251
+ Get type of file given file name.
2252
+
2253
+ my $type = Image::ExifTool::GetFileType($filename);
2254
+ my $desc = Image::ExifTool::GetFileType($filename, 1);
2255
+
2256
+ =over 4
2257
+
2258
+ =item Inputs:
2259
+
2260
+ 0) [optional] File name (or just an extension)
2261
+
2262
+ 1) [optional] Flag to return a description instead of a type. Set to 0 to
2263
+ return type for recognized but unsupported files (otherwise the return value
2264
+ for unsupported files is undef).
2265
+
2266
+ =item Return Value:
2267
+
2268
+ A string, based on the file extension, which indicates the basic format of
2269
+ the file. Note that some files may be based on other formats (like many RAW
2270
+ image formats are based on TIFF). In list context, may return more than one
2271
+ file type if the file may be based on different formats. Returns undef if
2272
+ files with this extension are not yet supported by ExifTool. Returns a list
2273
+ of extensions for all supported file types if no input extension is
2274
+ specified (or all recognized file types if the description flag is set to
2275
+ 0). Returns a more detailed description of the specific file format when the
2276
+ description flag is set.
2277
+
2278
+ =back
2279
+
2280
+ =head2 CanWrite [static]
2281
+
2282
+ Can the specified file be written?
2283
+
2284
+ my $writable = Image::ExifTool::CanWrite($filename);
2285
+
2286
+ =over 4
2287
+
2288
+ =item Inputs:
2289
+
2290
+ 0) File name or extension
2291
+
2292
+ =item Return Value:
2293
+
2294
+ True if ExifTool supports writing files of this type (based on the file
2295
+ extension).
2296
+
2297
+ =back
2298
+
2299
+ =head2 CanCreate [static]
2300
+
2301
+ Can the specified file be created?
2302
+
2303
+ my $creatable = Image::ExifTool::CanCreate($filename);
2304
+
2305
+ =over 4
2306
+
2307
+ =item Inputs:
2308
+
2309
+ 0) File name or extension
2310
+
2311
+ =item Return Value:
2312
+
2313
+ True if ExifTool can create files with this extension from scratch.
2314
+ Currently, this can only be done with XMP, MIE, ICC, VRD, DR4, EXV and EXIF
2315
+ files.
2316
+
2317
+ =back
2318
+
2319
+ =head2 AddUserDefinedTags [static]
2320
+
2321
+ Add user-defined tags to an existing tag table at run time. This differs
2322
+ from the usual technique of creating user-defined tags via the
2323
+ %Image::ExifTool::UserDefined hash (see the ExifTool_config file in the
2324
+ Image::ExifTool distribution) because it allows tags to be added after the
2325
+ tag table has been initialized.
2326
+
2327
+ use Image::ExifTool ':Public';
2328
+ my %tags = (
2329
+ TestTagID1 => { Name => 'TestTagName1' },
2330
+ TestTagID2 => { Name => 'TestTagName2' },
2331
+ );
2332
+ my $num = AddUserDefinedTags('Image::ExifTool::PDF::Info', %tags);
2333
+
2334
+ =over 4
2335
+
2336
+ =item Inputs:
2337
+
2338
+ 0) Destination tag table name
2339
+
2340
+ 1-N) Pairs of tag ID / tag information hash references for the new tags
2341
+
2342
+ =item Return Value:
2343
+
2344
+ The number of tags added.
2345
+
2346
+ =item Notes
2347
+
2348
+ Pre-existing tags with the same ID will be replaced in the destination
2349
+ table. See lib/Image/ExifTool/README in the full distribution for full
2350
+ details on the elements of the tag information hash.
2351
+
2352
+ =back
2353
+
2354
+ =head1 CHARACTER ENCODINGS
2355
+
2356
+ Certain meta information formats allow coded character sets other than plain
2357
+ ASCII. When reading, most known encodings are converted to the external
2358
+ character set according to the L</Charset> option, or to UTF-8 by default.
2359
+ When writing, the inverse conversions are performed. Alternatively, special
2360
+ characters may be converted to/from HTML character entities with the
2361
+ L</Escape> HTML option.
2362
+
2363
+ A distinction is made between the external character set visible via the
2364
+ ExifTool API, and the internal character used to store text in the metadata
2365
+ of a file. These character sets may be specified separately as follows:
2366
+
2367
+ =over 4
2368
+
2369
+ =item External Character Sets:
2370
+
2371
+ The encoding for tag values passed to/from ExifTool API functions is set via
2372
+ the L</Charset> option, which is 'UTF8' by default.
2373
+
2374
+ The encoding of file names is specified via the L</CharsetFileName> option.
2375
+ By default, L</CharsetFileName> is not defined, and file names passed to
2376
+ ExifTool are used directly in calls to the system i/o routines (which expect
2377
+ UTF-8 strings on Mac/Linux, but default to the system code page on Windows).
2378
+ In this mode on Windows a warning is issued if a file name contains special
2379
+ characters, but this warning may be avoided by setting L</CharsetFileName>
2380
+ to an empty string. Setting L</CharsetFileName> to any other value causes
2381
+ file names to be converted from the specified encoding to one appropriate
2382
+ for the system. In Windows this also has the effect of activating Unicode
2383
+ filename support via the special Windows wide-character i/o routines if
2384
+ Win32API::File is available.
2385
+
2386
+ =item Internal Character Sets:
2387
+
2388
+ The encodings used to store strings in the various metadata formats. These
2389
+ encodings may be changed for certain types of metadata via the
2390
+ L</CharsetEXIF>, L</CharsetID3>, L</CharsetIPTC>, L</CharsetPhotoshop> and
2391
+ L</CharsetQuickTime> options.
2392
+
2393
+ =back
2394
+
2395
+ Values are returned as byte strings of encoded characters. Perl wide
2396
+ characters are not used. By default, most returned strings are encoded in
2397
+ UTF-8. For these, Encode::decode_utf8() may be used to convert to a
2398
+ sequence of logical Perl characters. Note that some settings of the
2399
+ PERL_UNICODE environment variable may be incompatible with ExifTool's
2400
+ character handling.
2401
+
2402
+ More specific details are given below about how character coding is handled
2403
+ for EXIF, IPTC, XMP, PNG, ID3, PDF, Photoshop, QuickTime, AIFF, MIE and
2404
+ Vorbis information:
2405
+
2406
+ =head2 EXIF
2407
+
2408
+ Most textual information in EXIF is stored in ASCII format (called "string"
2409
+ in the L<ExifTool tag name documentation|Image::ExifTool::TagNames>). By
2410
+ default ExifTool does not convert these strings. However, it is not
2411
+ uncommon for applications to write UTF-8 or other encodings where ASCII is
2412
+ expected. To deal with these, ExifTool allows the internal EXIF string
2413
+ encoding to be specified with L</CharsetEXIF>, which causes EXIF string
2414
+ values to be converted from the specified character set when reading, and
2415
+ stored with this character set when writing. (The MWG recommends using
2416
+ UTF-8 encoding for EXIF strings, and in keeping with this the
2417
+ L<MWG|Image::ExifTool::MWG> module sets the default internal EXIF string
2418
+ encoding to UTF-8, but note that this will have no effect unless the
2419
+ external encoding is also set to something other than the default of UTF-8.)
2420
+
2421
+ A few EXIF tags (UserComment, GPSProcessingMethod and GPSAreaInformation)
2422
+ support a designated internal text encoding, with values stored as ASCII,
2423
+ Unicode (UCS-2) or JIS. When reading these tags, ExifTool converts Unicode
2424
+ and JIS to the external character set specified by the L</Charset>
2425
+ option, or to UTF-8 by default. ASCII text is not converted. When writing,
2426
+ text is stored as ASCII unless the string contains special characters, in
2427
+ which case it is converted from the external character set (UTF-8 by
2428
+ default), and stored as Unicode. ExifTool writes Unicode in native EXIF byte
2429
+ ordering by default, but the byte order may be specified by setting the
2430
+ ExifUnicodeByteOrder tag (see the
2431
+ L<Extra Tags documentation|Image::ExifTool::TagNames/Extra Tags>).
2432
+
2433
+ The EXIF "XP" tags (XPTitle, XPComment, etc) are always stored as
2434
+ little-endian Unicode (UCS-2), and are read and written using the specified
2435
+ character set.
2436
+
2437
+ =head2 IPTC
2438
+
2439
+ The value of the IPTC:CodedCharacterSet tag determines how the internal IPTC
2440
+ string values are interpreted. If CodedCharacterSet exists and has a value
2441
+ of 'UTF8' (or 'ESC % G') then string values are assumed to be stored as
2442
+ UTF-8, otherwise Windows Latin1 (cp1252, 'Latin') coding is assumed by
2443
+ default, but this can be changed with the L</CharsetIPTC> option. When
2444
+ reading, these strings are converted to the character set specified by the
2445
+ L</Charset> option. When writing, the inverse conversions are performed.
2446
+ No conversion is done if the internal (IPTC) and external (ExifTool)
2447
+ character sets are the same. Note that ISO 2022 character set shifting is
2448
+ not supported. Instead, a warning is issued and the string is not converted
2449
+ if an ISO 2022 shift code is encountered. See L<http://www.iptc.org/IIM/>
2450
+ for the official IPTC specification.
2451
+
2452
+ ExifTool may be used to convert IPTC values to a different internal
2453
+ encoding. To do this, all IPTC tags must be rewritten along with the
2454
+ desired value of CodedCharacterSet. For example, the following command
2455
+ changes the internal IPTC encoding to UTF-8 (from Windows Latin1 unless
2456
+ CodedCharacterSet was already 'UTF8'):
2457
+
2458
+ exiftool -tagsfromfile @ -iptc:all -codedcharacterset=utf8 a.jpg
2459
+
2460
+ or from Windows Latin2 (cp1250) to UTF-8:
2461
+
2462
+ exiftool -tagsfromfile @ -iptc:all -codedcharacterset=utf8 \
2463
+ -charset iptc=latin2 a.jpg
2464
+
2465
+ and this command changes it back from UTF-8 to Windows Latin1 (cp1252):
2466
+
2467
+ exiftool -tagsfromfile @ -iptc:all -codedcharacterset= a.jpg
2468
+
2469
+ or to Windows Latin2:
2470
+
2471
+ exiftool -tagsfromfile @ -iptc:all -codedcharacterset= \
2472
+ -charset iptc=latin2 a.jpg
2473
+
2474
+ Unless CodedCharacterSet is 'UTF8', applications have no reliable way to
2475
+ determine the IPTC character encoding. For this reason, it is recommended
2476
+ that CodedCharacterSet be set to 'UTF8' when creating new IPTC.
2477
+
2478
+ (Note: Here, "IPTC" Refers to the older IPTC IIM format. The more recent
2479
+ IPTC Core and Extension specifications actually use the XMP format.)
2480
+
2481
+ =head2 XMP
2482
+
2483
+ Exiftool reads XMP encoded as UTF-8, UTF-16 or UTF-32, and converts them all
2484
+ to UTF-8 internally. Also, all XML character entity references and numeric
2485
+ character references are converted. When writing, ExifTool always encodes
2486
+ XMP as UTF-8, converting the following 5 characters to XML character
2487
+ references: E<amp> E<lt> E<gt> E<39> E<quot>. By default no further
2488
+ conversion is performed, however if the L</Charset> option is other than
2489
+ 'UTF8' then text is converted to/from a specified character set when
2490
+ reading/writing.
2491
+
2492
+ =head2 PNG
2493
+
2494
+ L<PNG TextualData tags|Image::ExifTool::TagNames/"PNG TextualData Tags"> are
2495
+ stored as tEXt, zTXt and iTXt chunks in PNG images. The tEXt and zTXt
2496
+ chunks use ISO 8859-1 encoding, while iTXt uses UTF-8. When reading,
2497
+ ExifTool converts all PNG textual data to the character set specified by the
2498
+ L</Charset> option. When writing, ExifTool generates a tEXt chunk (or zTXt
2499
+ with the L</Compress> option) if the text doesn't contain special characters
2500
+ or if Latin encoding is specified; otherwise an iTXt chunk is used and the
2501
+ text is converted from the specified character set and stored as UTF-8.
2502
+
2503
+ =head2 JPEG Comment
2504
+
2505
+ The encoding for the JPEG Comment (COM segment) is not specified, so
2506
+ ExifTool reads/writes this text without conversion.
2507
+
2508
+ =head2 ID3
2509
+
2510
+ The ID3v1 specification officially supports only ISO 8859-1 encoding (a
2511
+ subset of Windows Latin1), although some applications may incorrectly use
2512
+ other character sets. By default ExifTool converts ID3v1 text from Latin to
2513
+ the character set specified by the L</Charset> option. However, the
2514
+ internal ID3v1 charset may be specified with the L</CharsetID3> option. The
2515
+ encoding for ID3v2 information is stored in the file, so ExifTool converts
2516
+ ID3v2 text from this encoding to the character set specified by the
2517
+ L</Charset> option. ExifTool does not currently write ID3 information.
2518
+
2519
+ =head2 PDF
2520
+
2521
+ PDF text strings are stored in either PDFDocEncoding (similar to Windows
2522
+ Latin1) or Unicode (UCS-2). When reading, ExifTool converts to the
2523
+ character set specified by the L</Charset> option. When writing, ExifTool
2524
+ encodes input text from the specified character set as Unicode only if the
2525
+ string contains special characters, otherwise PDFDocEncoding is used.
2526
+
2527
+ =head2 Photoshop
2528
+
2529
+ Some Photoshop resource names are stored as Pascal strings with unknown
2530
+ encoding. By default, ExifTool assumes MacRoman encoding and converts this
2531
+ to UTF-8, but the internal and external character sets may be specified with
2532
+ the L</CharsetPhotoshop> and L</Charset> options respectively.
2533
+
2534
+ =head2 QuickTime
2535
+
2536
+ QuickTime text strings may be stored in a variety of poorly document
2537
+ formats. ExifTool does its best to decode these according to the L</Charset>
2538
+ option setting. For some QuickTime strings, ExifTool assumes a default
2539
+ encoding of MacRoman, but this may be changed with the L</CharsetQuickTime>
2540
+ option.
2541
+
2542
+ =head2 AIFF
2543
+
2544
+ AIFF strings are assumed to be stored in MacRoman, and are converted
2545
+ according to the L</Charset> option when reading.
2546
+
2547
+ =head2 RIFF
2548
+
2549
+ The internal encoding of RIFF strings (eg. in AVI and WAV files) is assumed
2550
+ to be Latin unless otherwise specified by the RIFF CSET chunk or the
2551
+ L</CharsetRIFF> option.
2552
+
2553
+ =head2 MIE
2554
+
2555
+ MIE strings are stored as either UTF-8 or ISO 8859-1. When reading, UTF-8
2556
+ strings are converted according to the L</Charset> option, and ISO 8859-1
2557
+ strings are never converted. When writing, input strings are converted from
2558
+ the specified character set to UTF-8. The resulting strings are stored as
2559
+ UTF-8 if they contain multi-byte UTF-8 character sequences, otherwise they
2560
+ are stored as ISO 8859-1.
2561
+
2562
+ =head2 Vorbis
2563
+
2564
+ Vorbis comments are stored as UTF-8, and are converted to the character set
2565
+ specified by the L</Charset> option.
2566
+
2567
+ =head1 AUTHOR
2568
+
2569
+ Copyright 2003-2017, Phil Harvey
2570
+
2571
+ This library is free software; you can redistribute it and/or modify it
2572
+ under the same terms as Perl itself.
2573
+
2574
+ =head1 ACKNOWLEDGEMENTS
2575
+
2576
+ Many people have helped in the development of ExifTool through their bug
2577
+ reports, comments and suggestions, and/or additions to the code. See the
2578
+ ACKNOWLEDGEMENTS in the individual Image::ExifTool modules and in
2579
+ html/index.html of the Image::ExifTool distribution package for a list of
2580
+ people who have contributed to this project.
2581
+
2582
+ =head1 SEE ALSO
2583
+
2584
+ L<exiftool(1)|exiftool>,
2585
+ L<Image::ExifTool::TagNames(3pm)|Image::ExifTool::TagNames>,
2586
+ L<Image::ExifTool::Shortcuts(3pm)|Image::ExifTool::Shortcuts>,
2587
+ L<Image::ExifTool::Shift.pl|Image::ExifTool::Shift.pl>,
2588
+ L<Image::Info(3pm)|Image::Info>,
2589
+ L<Image::MetaData::JPEG(3pm)|Image::MetaData::JPEG>
2590
+
2591
+ =cut
2592
+
2593
+ # end