exiftool_vendored 9.33.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (864) hide show
  1. checksums.yaml +15 -0
  2. data/bin/Image-ExifTool-9.33/Changes +6241 -0
  3. data/bin/Image-ExifTool-9.33/MANIFEST +859 -0
  4. data/bin/Image-ExifTool-9.33/META.yml +27 -0
  5. data/bin/Image-ExifTool-9.33/Makefile.PL +41 -0
  6. data/bin/Image-ExifTool-9.33/README +227 -0
  7. data/bin/Image-ExifTool-9.33/arg_files/exif2iptc.args +24 -0
  8. data/bin/Image-ExifTool-9.33/arg_files/exif2xmp.args +38 -0
  9. data/bin/Image-ExifTool-9.33/arg_files/gps2xmp.args +20 -0
  10. data/bin/Image-ExifTool-9.33/arg_files/iptc2exif.args +17 -0
  11. data/bin/Image-ExifTool-9.33/arg_files/iptc2xmp.args +53 -0
  12. data/bin/Image-ExifTool-9.33/arg_files/iptcCore.args +172 -0
  13. data/bin/Image-ExifTool-9.33/arg_files/pdf2xmp.args +23 -0
  14. data/bin/Image-ExifTool-9.33/arg_files/xmp2exif.args +39 -0
  15. data/bin/Image-ExifTool-9.33/arg_files/xmp2gps.args +24 -0
  16. data/bin/Image-ExifTool-9.33/arg_files/xmp2iptc.args +62 -0
  17. data/bin/Image-ExifTool-9.33/arg_files/xmp2pdf.args +23 -0
  18. data/bin/Image-ExifTool-9.33/config_files/ExifTool_config +299 -0
  19. data/bin/Image-ExifTool-9.33/config_files/convert_regions.config +81 -0
  20. data/bin/Image-ExifTool-9.33/exiftool +5715 -0
  21. data/bin/Image-ExifTool-9.33/fmt_files/gpx.fmt +29 -0
  22. data/bin/Image-ExifTool-9.33/fmt_files/gpx_wpt.fmt +33 -0
  23. data/bin/Image-ExifTool-9.33/fmt_files/kml.fmt +53 -0
  24. data/bin/Image-ExifTool-9.33/html/ExifTool.html +1959 -0
  25. data/bin/Image-ExifTool-9.33/html/MIE1.1-20070121.pdf +0 -0
  26. data/bin/Image-ExifTool-9.33/html/Shift.html +173 -0
  27. data/bin/Image-ExifTool-9.33/html/TagNames/AFCP.html +53 -0
  28. data/bin/Image-ExifTool-9.33/html/TagNames/AIFF.html +146 -0
  29. data/bin/Image-ExifTool-9.33/html/TagNames/APE.html +149 -0
  30. data/bin/Image-ExifTool-9.33/html/TagNames/APP12.html +188 -0
  31. data/bin/Image-ExifTool-9.33/html/TagNames/ASF.html +1066 -0
  32. data/bin/Image-ExifTool-9.33/html/TagNames/BMP.html +110 -0
  33. data/bin/Image-ExifTool-9.33/html/TagNames/Canon.html +8062 -0
  34. data/bin/Image-ExifTool-9.33/html/TagNames/CanonCustom.html +2044 -0
  35. data/bin/Image-ExifTool-9.33/html/TagNames/CanonRaw.html +561 -0
  36. data/bin/Image-ExifTool-9.33/html/TagNames/CanonVRD.html +1222 -0
  37. data/bin/Image-ExifTool-9.33/html/TagNames/Casio.html +1569 -0
  38. data/bin/Image-ExifTool-9.33/html/TagNames/Composite.html +665 -0
  39. data/bin/Image-ExifTool-9.33/html/TagNames/DICOM.html +15762 -0
  40. data/bin/Image-ExifTool-9.33/html/TagNames/DNG.html +273 -0
  41. data/bin/Image-ExifTool-9.33/html/TagNames/DV.html +75 -0
  42. data/bin/Image-ExifTool-9.33/html/TagNames/DarwinCore.html +1445 -0
  43. data/bin/Image-ExifTool-9.33/html/TagNames/DjVu.html +313 -0
  44. data/bin/Image-ExifTool-9.33/html/TagNames/EXE.html +697 -0
  45. data/bin/Image-ExifTool-9.33/html/TagNames/EXIF.html +3244 -0
  46. data/bin/Image-ExifTool-9.33/html/TagNames/Extra.html +301 -0
  47. data/bin/Image-ExifTool-9.33/html/TagNames/FLAC.html +183 -0
  48. data/bin/Image-ExifTool-9.33/html/TagNames/FLIR.html +931 -0
  49. data/bin/Image-ExifTool-9.33/html/TagNames/Flash.html +419 -0
  50. data/bin/Image-ExifTool-9.33/html/TagNames/FlashPix.html +1435 -0
  51. data/bin/Image-ExifTool-9.33/html/TagNames/Font.html +485 -0
  52. data/bin/Image-ExifTool-9.33/html/TagNames/FotoStation.html +103 -0
  53. data/bin/Image-ExifTool-9.33/html/TagNames/FujiFilm.html +637 -0
  54. data/bin/Image-ExifTool-9.33/html/TagNames/GE.html +40 -0
  55. data/bin/Image-ExifTool-9.33/html/TagNames/GIF.html +116 -0
  56. data/bin/Image-ExifTool-9.33/html/TagNames/GIMP.html +140 -0
  57. data/bin/Image-ExifTool-9.33/html/TagNames/GPS.html +222 -0
  58. data/bin/Image-ExifTool-9.33/html/TagNames/GeoTiff.html +2177 -0
  59. data/bin/Image-ExifTool-9.33/html/TagNames/H264.html +393 -0
  60. data/bin/Image-ExifTool-9.33/html/TagNames/HP.html +155 -0
  61. data/bin/Image-ExifTool-9.33/html/TagNames/HTML.html +666 -0
  62. data/bin/Image-ExifTool-9.33/html/TagNames/ICC_Profile.html +710 -0
  63. data/bin/Image-ExifTool-9.33/html/TagNames/ID3.html +1473 -0
  64. data/bin/Image-ExifTool-9.33/html/TagNames/IPTC.html +895 -0
  65. data/bin/Image-ExifTool-9.33/html/TagNames/ITC.html +90 -0
  66. data/bin/Image-ExifTool-9.33/html/TagNames/JFIF.html +61 -0
  67. data/bin/Image-ExifTool-9.33/html/TagNames/JPEG.html +523 -0
  68. data/bin/Image-ExifTool-9.33/html/TagNames/JVC.html +56 -0
  69. data/bin/Image-ExifTool-9.33/html/TagNames/Jpeg2000.html +464 -0
  70. data/bin/Image-ExifTool-9.33/html/TagNames/Kodak.html +1759 -0
  71. data/bin/Image-ExifTool-9.33/html/TagNames/KyoceraRaw.html +92 -0
  72. data/bin/Image-ExifTool-9.33/html/TagNames/LNK.html +478 -0
  73. data/bin/Image-ExifTool-9.33/html/TagNames/Leaf.html +870 -0
  74. data/bin/Image-ExifTool-9.33/html/TagNames/M2TS.html +133 -0
  75. data/bin/Image-ExifTool-9.33/html/TagNames/MIE.html +1026 -0
  76. data/bin/Image-ExifTool-9.33/html/TagNames/MIFF.html +196 -0
  77. data/bin/Image-ExifTool-9.33/html/TagNames/MNG.html +847 -0
  78. data/bin/Image-ExifTool-9.33/html/TagNames/MPC.html +97 -0
  79. data/bin/Image-ExifTool-9.33/html/TagNames/MPEG.html +249 -0
  80. data/bin/Image-ExifTool-9.33/html/TagNames/MPF.html +199 -0
  81. data/bin/Image-ExifTool-9.33/html/TagNames/MWG.html +563 -0
  82. data/bin/Image-ExifTool-9.33/html/TagNames/MXF.html +6673 -0
  83. data/bin/Image-ExifTool-9.33/html/TagNames/Matroska.html +1069 -0
  84. data/bin/Image-ExifTool-9.33/html/TagNames/Microsoft.html +2066 -0
  85. data/bin/Image-ExifTool-9.33/html/TagNames/Minolta.html +2555 -0
  86. data/bin/Image-ExifTool-9.33/html/TagNames/MinoltaRaw.html +326 -0
  87. data/bin/Image-ExifTool-9.33/html/TagNames/Nikon.html +4467 -0
  88. data/bin/Image-ExifTool-9.33/html/TagNames/NikonCapture.html +776 -0
  89. data/bin/Image-ExifTool-9.33/html/TagNames/NikonCustom.html +3835 -0
  90. data/bin/Image-ExifTool-9.33/html/TagNames/OOXML.html +280 -0
  91. data/bin/Image-ExifTool-9.33/html/TagNames/Ogg.html +44 -0
  92. data/bin/Image-ExifTool-9.33/html/TagNames/Olympus.html +3386 -0
  93. data/bin/Image-ExifTool-9.33/html/TagNames/OpenEXR.html +222 -0
  94. data/bin/Image-ExifTool-9.33/html/TagNames/PDF.html +745 -0
  95. data/bin/Image-ExifTool-9.33/html/TagNames/PGF.html +80 -0
  96. data/bin/Image-ExifTool-9.33/html/TagNames/PICT.html +753 -0
  97. data/bin/Image-ExifTool-9.33/html/TagNames/PLIST.html +86 -0
  98. data/bin/Image-ExifTool-9.33/html/TagNames/PNG.html +515 -0
  99. data/bin/Image-ExifTool-9.33/html/TagNames/PSP.html +160 -0
  100. data/bin/Image-ExifTool-9.33/html/TagNames/Panasonic.html +1452 -0
  101. data/bin/Image-ExifTool-9.33/html/TagNames/PanasonicRaw.html +214 -0
  102. data/bin/Image-ExifTool-9.33/html/TagNames/Pentax.html +4332 -0
  103. data/bin/Image-ExifTool-9.33/html/TagNames/PhaseOne.html +258 -0
  104. data/bin/Image-ExifTool-9.33/html/TagNames/PhotoCD.html +402 -0
  105. data/bin/Image-ExifTool-9.33/html/TagNames/PhotoMechanic.html +196 -0
  106. data/bin/Image-ExifTool-9.33/html/TagNames/Photoshop.html +555 -0
  107. data/bin/Image-ExifTool-9.33/html/TagNames/PostScript.html +125 -0
  108. data/bin/Image-ExifTool-9.33/html/TagNames/PrintIM.html +31 -0
  109. data/bin/Image-ExifTool-9.33/html/TagNames/Qualcomm.html +4778 -0
  110. data/bin/Image-ExifTool-9.33/html/TagNames/QuickTime.html +3104 -0
  111. data/bin/Image-ExifTool-9.33/html/TagNames/RIFF.html +1164 -0
  112. data/bin/Image-ExifTool-9.33/html/TagNames/RSRC.html +74 -0
  113. data/bin/Image-ExifTool-9.33/html/TagNames/RTF.html +150 -0
  114. data/bin/Image-ExifTool-9.33/html/TagNames/Radiance.html +87 -0
  115. data/bin/Image-ExifTool-9.33/html/TagNames/Rawzor.html +45 -0
  116. data/bin/Image-ExifTool-9.33/html/TagNames/Real.html +780 -0
  117. data/bin/Image-ExifTool-9.33/html/TagNames/Reconyx.html +132 -0
  118. data/bin/Image-ExifTool-9.33/html/TagNames/Ricoh.html +456 -0
  119. data/bin/Image-ExifTool-9.33/html/TagNames/Samsung.html +419 -0
  120. data/bin/Image-ExifTool-9.33/html/TagNames/Sanyo.html +366 -0
  121. data/bin/Image-ExifTool-9.33/html/TagNames/Shortcuts.html +237 -0
  122. data/bin/Image-ExifTool-9.33/html/TagNames/Sigma.html +372 -0
  123. data/bin/Image-ExifTool-9.33/html/TagNames/SigmaRaw.html +403 -0
  124. data/bin/Image-ExifTool-9.33/html/TagNames/Sony.html +4279 -0
  125. data/bin/Image-ExifTool-9.33/html/TagNames/SonyIDC.html +267 -0
  126. data/bin/Image-ExifTool-9.33/html/TagNames/Stim.html +200 -0
  127. data/bin/Image-ExifTool-9.33/html/TagNames/Theora.html +102 -0
  128. data/bin/Image-ExifTool-9.33/html/TagNames/Unknown.html +31 -0
  129. data/bin/Image-ExifTool-9.33/html/TagNames/Vorbis.html +228 -0
  130. data/bin/Image-ExifTool-9.33/html/TagNames/XMP.html +7234 -0
  131. data/bin/Image-ExifTool-9.33/html/TagNames/ZIP.html +204 -0
  132. data/bin/Image-ExifTool-9.33/html/TagNames/iWork.html +49 -0
  133. data/bin/Image-ExifTool-9.33/html/TagNames/index.html +192 -0
  134. data/bin/Image-ExifTool-9.33/html/TagNames/style.css +31 -0
  135. data/bin/Image-ExifTool-9.33/html/ancient_history.html +6727 -0
  136. data/bin/Image-ExifTool-9.33/html/canon_raw.html +366 -0
  137. data/bin/Image-ExifTool-9.33/html/commentary.html +319 -0
  138. data/bin/Image-ExifTool-9.33/html/config.html +312 -0
  139. data/bin/Image-ExifTool-9.33/html/data_members.html +265 -0
  140. data/bin/Image-ExifTool-9.33/html/exiftool_pod.html +2338 -0
  141. data/bin/Image-ExifTool-9.33/html/faq.html +1434 -0
  142. data/bin/Image-ExifTool-9.33/html/filename.html +281 -0
  143. data/bin/Image-ExifTool-9.33/html/geotag.html +642 -0
  144. data/bin/Image-ExifTool-9.33/html/history.html +358 -0
  145. data/bin/Image-ExifTool-9.33/html/htmldump.html +732 -0
  146. data/bin/Image-ExifTool-9.33/html/idiosyncracies.html +251 -0
  147. data/bin/Image-ExifTool-9.33/html/index.html +1271 -0
  148. data/bin/Image-ExifTool-9.33/html/install.html +239 -0
  149. data/bin/Image-ExifTool-9.33/html/metafiles.html +266 -0
  150. data/bin/Image-ExifTool-9.33/html/overview.png +0 -0
  151. data/bin/Image-ExifTool-9.33/html/standards.html +277 -0
  152. data/bin/Image-ExifTool-9.33/html/struct.html +342 -0
  153. data/bin/Image-ExifTool-9.33/html/style.css +31 -0
  154. data/bin/Image-ExifTool-9.33/html/under.html +124 -0
  155. data/bin/Image-ExifTool-9.33/html/verbose.html +195 -0
  156. data/bin/Image-ExifTool-9.33/html/writing.html +239 -0
  157. data/bin/Image-ExifTool-9.33/lib/File/RandomAccess.pm +378 -0
  158. data/bin/Image-ExifTool-9.33/lib/File/RandomAccess.pod +231 -0
  159. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool.pm +6815 -0
  160. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool.pod +2385 -0
  161. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/AES.pm +501 -0
  162. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/AFCP.pm +284 -0
  163. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/AIFF.pm +271 -0
  164. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/APE.pm +262 -0
  165. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/APP12.pm +322 -0
  166. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/ASF.pm +884 -0
  167. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/BMP.pm +179 -0
  168. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/BZZ.pm +472 -0
  169. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/BigTIFF.pm +282 -0
  170. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/BuildTagLookup.pm +2400 -0
  171. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Canon.pm +7794 -0
  172. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/CanonCustom.pm +2523 -0
  173. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/CanonRaw.pm +931 -0
  174. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/CanonVRD.pm +1481 -0
  175. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/CaptureOne.pm +235 -0
  176. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Casio.pm +2013 -0
  177. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Charset.pm +396 -0
  178. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Charset/Arabic.pm +39 -0
  179. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Charset/Baltic.pm +35 -0
  180. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Charset/Cyrillic.pm +45 -0
  181. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Charset/Greek.pm +40 -0
  182. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Charset/Hebrew.pm +36 -0
  183. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Charset/JIS.pm +1735 -0
  184. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Charset/Latin.pm +24 -0
  185. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Charset/Latin2.pm +36 -0
  186. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Charset/MacArabic.pm +47 -0
  187. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Charset/MacChineseCN.pm +2088 -0
  188. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Charset/MacChineseTW.pm +3623 -0
  189. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Charset/MacCroatian.pm +43 -0
  190. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Charset/MacCyrillic.pm +47 -0
  191. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Charset/MacGreek.pm +45 -0
  192. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Charset/MacHebrew.pm +47 -0
  193. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Charset/MacIceland.pm +42 -0
  194. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Charset/MacJapanese.pm +1933 -0
  195. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Charset/MacKorean.pm +2720 -0
  196. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Charset/MacLatin2.pm +44 -0
  197. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Charset/MacRSymbol.pm +2087 -0
  198. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Charset/MacRoman.pm +42 -0
  199. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Charset/MacRomanian.pm +42 -0
  200. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Charset/MacThai.pm +49 -0
  201. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Charset/MacTurkish.pm +42 -0
  202. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Charset/PDFDoc.pm +28 -0
  203. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Charset/ShiftJIS.pm +1835 -0
  204. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Charset/Symbol.pm +54 -0
  205. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Charset/Thai.pm +41 -0
  206. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Charset/Turkish.pm +25 -0
  207. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Charset/Vietnam.pm +27 -0
  208. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/DICOM.pm +3835 -0
  209. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/DNG.pm +835 -0
  210. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/DV.pm +319 -0
  211. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/DarwinCore.pm +317 -0
  212. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/DjVu.pm +376 -0
  213. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/EXE.pm +1228 -0
  214. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Exif.pm +4542 -0
  215. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/FLAC.pm +296 -0
  216. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/FLIR.pm +972 -0
  217. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Fixup.pm +354 -0
  218. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Flash.pm +755 -0
  219. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/FlashPix.pm +1882 -0
  220. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Font.pm +643 -0
  221. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/FotoStation.pm +258 -0
  222. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/FujiFilm.pm +1020 -0
  223. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/GE.pm +80 -0
  224. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/GIF.pm +542 -0
  225. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/GIMP.pm +258 -0
  226. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/GPS.pm +511 -0
  227. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/GeoTiff.pm +2187 -0
  228. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Geotag.pm +1173 -0
  229. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/H264.pm +1102 -0
  230. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/HP.pm +262 -0
  231. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/HTML.pm +576 -0
  232. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/HtmlDump.pm +895 -0
  233. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/ICC_Profile.pm +999 -0
  234. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/ID3.pm +1532 -0
  235. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/IPTC.pm +1244 -0
  236. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/ITC.pm +215 -0
  237. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Import.pm +308 -0
  238. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/InDesign.pm +277 -0
  239. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/JPEG.pm +588 -0
  240. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/JPEGDigest.pm +2511 -0
  241. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/JVC.pm +130 -0
  242. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Jpeg2000.pm +881 -0
  243. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Kodak.pm +2014 -0
  244. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/KyoceraRaw.pm +173 -0
  245. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/LNK.pm +723 -0
  246. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Lang/cs.pm +1586 -0
  247. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Lang/de.pm +7356 -0
  248. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Lang/en_ca.pm +557 -0
  249. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Lang/en_gb.pm +572 -0
  250. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Lang/es.pm +4016 -0
  251. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Lang/fi.pm +2856 -0
  252. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Lang/fr.pm +4720 -0
  253. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Lang/it.pm +7917 -0
  254. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Lang/ja.pm +5815 -0
  255. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Lang/ko.pm +2332 -0
  256. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Lang/nl.pm +3220 -0
  257. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Lang/pl.pm +1140 -0
  258. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Lang/ru.pm +769 -0
  259. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Lang/sv.pm +639 -0
  260. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Lang/tr.pm +544 -0
  261. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Lang/zh_cn.pm +1329 -0
  262. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Lang/zh_tw.pm +802 -0
  263. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Leaf.pm +515 -0
  264. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/M2TS.pm +729 -0
  265. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/MIE.pm +2561 -0
  266. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/MIEUnits.pod +377 -0
  267. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/MIFF.pm +279 -0
  268. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/MNG.pm +684 -0
  269. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/MPC.pm +156 -0
  270. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/MPEG.pm +736 -0
  271. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/MPF.pm +289 -0
  272. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/MWG.pm +736 -0
  273. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/MXF.pm +3032 -0
  274. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/MakerNotes.pm +1573 -0
  275. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Matroska.pm +891 -0
  276. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Microsoft.pm +879 -0
  277. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Minolta.pm +2833 -0
  278. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/MinoltaRaw.pm +534 -0
  279. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Nikon.pm +6116 -0
  280. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/NikonCapture.pm +911 -0
  281. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/NikonCustom.pm +4405 -0
  282. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/OOXML.pm +409 -0
  283. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Ogg.pm +237 -0
  284. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Olympus.pm +3582 -0
  285. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/OpenEXR.pm +324 -0
  286. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/PDF.pm +2327 -0
  287. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/PGF.pm +143 -0
  288. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/PICT.pm +1260 -0
  289. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/PLIST.pm +449 -0
  290. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/PNG.pm +1100 -0
  291. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/PPM.pm +169 -0
  292. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/PSP.pm +305 -0
  293. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Panasonic.pm +1995 -0
  294. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/PanasonicRaw.pm +535 -0
  295. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Pentax.pm +5489 -0
  296. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/PhaseOne.pm +557 -0
  297. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/PhotoCD.pm +507 -0
  298. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/PhotoMechanic.pm +256 -0
  299. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Photoshop.pm +629 -0
  300. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/PostScript.pm +693 -0
  301. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/PrintIM.pm +125 -0
  302. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Qualcomm.pm +1344 -0
  303. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/QuickTime.pm +3519 -0
  304. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/README +944 -0
  305. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/RIFF.pm +1322 -0
  306. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/RSRC.pm +241 -0
  307. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/RTF.pm +383 -0
  308. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Radiance.pm +144 -0
  309. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Rawzor.pm +190 -0
  310. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Real.pm +736 -0
  311. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Reconyx.pm +190 -0
  312. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Ricoh.pm +741 -0
  313. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Samsung.pm +820 -0
  314. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Sanyo.pm +439 -0
  315. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Shift.pl +594 -0
  316. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Shortcuts.pm +291 -0
  317. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Sigma.pm +574 -0
  318. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/SigmaRaw.pm +649 -0
  319. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Sony.pm +5722 -0
  320. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/SonyIDC.pm +330 -0
  321. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Stim.pm +196 -0
  322. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/TagInfoXML.pm +792 -0
  323. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/TagLookup.pm +8005 -0
  324. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/TagNames.pod +25950 -0
  325. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Theora.pm +145 -0
  326. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Unknown.pm +66 -0
  327. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Vorbis.pm +237 -0
  328. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/WriteCanonRaw.pl +637 -0
  329. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/WriteExif.pl +3674 -0
  330. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/WriteIPTC.pl +702 -0
  331. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/WritePDF.pl +759 -0
  332. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/WritePNG.pl +330 -0
  333. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/WritePhotoshop.pl +266 -0
  334. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/WritePostScript.pl +777 -0
  335. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/WriteXMP.pl +1318 -0
  336. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/Writer.pl +5779 -0
  337. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/XMP.pm +3634 -0
  338. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/XMP2.pl +1298 -0
  339. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/XMPStruct.pl +813 -0
  340. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/ZIP.pm +623 -0
  341. data/bin/Image-ExifTool-9.33/lib/Image/ExifTool/iWork.pm +223 -0
  342. data/bin/Image-ExifTool-9.33/perl-Image-ExifTool.spec +104 -0
  343. data/bin/Image-ExifTool-9.33/t/AFCP.t +44 -0
  344. data/bin/Image-ExifTool-9.33/t/AFCP_2.out +37 -0
  345. data/bin/Image-ExifTool-9.33/t/AFCP_3.out +20 -0
  346. data/bin/Image-ExifTool-9.33/t/AIFF.t +28 -0
  347. data/bin/Image-ExifTool-9.33/t/AIFF_2.out +31 -0
  348. data/bin/Image-ExifTool-9.33/t/APE.t +38 -0
  349. data/bin/Image-ExifTool-9.33/t/APE_2.out +28 -0
  350. data/bin/Image-ExifTool-9.33/t/APE_3.out +57 -0
  351. data/bin/Image-ExifTool-9.33/t/ASF.t +28 -0
  352. data/bin/Image-ExifTool-9.33/t/ASF_2.out +54 -0
  353. data/bin/Image-ExifTool-9.33/t/BMP.t +28 -0
  354. data/bin/Image-ExifTool-9.33/t/BMP_2.out +21 -0
  355. data/bin/Image-ExifTool-9.33/t/BigTIFF.t +28 -0
  356. data/bin/Image-ExifTool-9.33/t/BigTIFF_2.out +19 -0
  357. data/bin/Image-ExifTool-9.33/t/Canon.t +41 -0
  358. data/bin/Image-ExifTool-9.33/t/CanonRaw.t +126 -0
  359. data/bin/Image-ExifTool-9.33/t/CanonRaw_2.out +165 -0
  360. data/bin/Image-ExifTool-9.33/t/CanonRaw_4.out +217 -0
  361. data/bin/Image-ExifTool-9.33/t/CanonRaw_5.out +207 -0
  362. data/bin/Image-ExifTool-9.33/t/CanonRaw_6.out +231 -0
  363. data/bin/Image-ExifTool-9.33/t/CanonRaw_7.out +247 -0
  364. data/bin/Image-ExifTool-9.33/t/CanonVRD.t +129 -0
  365. data/bin/Image-ExifTool-9.33/t/CanonVRD_11.out +118 -0
  366. data/bin/Image-ExifTool-9.33/t/CanonVRD_12.out +12 -0
  367. data/bin/Image-ExifTool-9.33/t/CanonVRD_2.out +116 -0
  368. data/bin/Image-ExifTool-9.33/t/CanonVRD_3.out +116 -0
  369. data/bin/Image-ExifTool-9.33/t/CanonVRD_4.out +2 -0
  370. data/bin/Image-ExifTool-9.33/t/CanonVRD_5.out +3 -0
  371. data/bin/Image-ExifTool-9.33/t/CanonVRD_6.out +3 -0
  372. data/bin/Image-ExifTool-9.33/t/CanonVRD_7.out +2 -0
  373. data/bin/Image-ExifTool-9.33/t/CanonVRD_8.out +2 -0
  374. data/bin/Image-ExifTool-9.33/t/CanonVRD_9.out +1 -0
  375. data/bin/Image-ExifTool-9.33/t/Canon_2.out +350 -0
  376. data/bin/Image-ExifTool-9.33/t/Canon_3.out +3 -0
  377. data/bin/Image-ExifTool-9.33/t/Casio.t +54 -0
  378. data/bin/Image-ExifTool-9.33/t/Casio_2.out +70 -0
  379. data/bin/Image-ExifTool-9.33/t/Casio_3.out +100 -0
  380. data/bin/Image-ExifTool-9.33/t/Casio_4.out +26 -0
  381. data/bin/Image-ExifTool-9.33/t/Casio_5.out +78 -0
  382. data/bin/Image-ExifTool-9.33/t/Casio_6.out +115 -0
  383. data/bin/Image-ExifTool-9.33/t/DICOM.t +28 -0
  384. data/bin/Image-ExifTool-9.33/t/DICOM_2.out +108 -0
  385. data/bin/Image-ExifTool-9.33/t/DNG.t +39 -0
  386. data/bin/Image-ExifTool-9.33/t/DNG_2.out +326 -0
  387. data/bin/Image-ExifTool-9.33/t/DNG_3.out +4 -0
  388. data/bin/Image-ExifTool-9.33/t/DV.t +27 -0
  389. data/bin/Image-ExifTool-9.33/t/DV_2.out +24 -0
  390. data/bin/Image-ExifTool-9.33/t/DjVu.t +28 -0
  391. data/bin/Image-ExifTool-9.33/t/DjVu_2.out +44 -0
  392. data/bin/Image-ExifTool-9.33/t/EXE.t +31 -0
  393. data/bin/Image-ExifTool-9.33/t/EXE_2.out +40 -0
  394. data/bin/Image-ExifTool-9.33/t/EXE_3.out +15 -0
  395. data/bin/Image-ExifTool-9.33/t/EXE_4.out +14 -0
  396. data/bin/Image-ExifTool-9.33/t/ExifTool.t +284 -0
  397. data/bin/Image-ExifTool-9.33/t/ExifTool_16.out +180 -0
  398. data/bin/Image-ExifTool-9.33/t/ExifTool_17.out +594 -0
  399. data/bin/Image-ExifTool-9.33/t/ExifTool_2.out +399 -0
  400. data/bin/Image-ExifTool-9.33/t/ExifTool_20.out +1 -0
  401. data/bin/Image-ExifTool-9.33/t/ExifTool_21.out +1 -0
  402. data/bin/Image-ExifTool-9.33/t/ExifTool_22.out +1 -0
  403. data/bin/Image-ExifTool-9.33/t/ExifTool_23.out +6 -0
  404. data/bin/Image-ExifTool-9.33/t/ExifTool_24.out +3 -0
  405. data/bin/Image-ExifTool-9.33/t/ExifTool_25.out +13 -0
  406. data/bin/Image-ExifTool-9.33/t/ExifTool_26.out +12 -0
  407. data/bin/Image-ExifTool-9.33/t/ExifTool_3.out +87 -0
  408. data/bin/Image-ExifTool-9.33/t/ExifTool_4.out +41 -0
  409. data/bin/Image-ExifTool-9.33/t/ExifTool_5.out +6 -0
  410. data/bin/Image-ExifTool-9.33/t/ExifTool_6.out +68 -0
  411. data/bin/Image-ExifTool-9.33/t/ExifTool_7.out +125 -0
  412. data/bin/Image-ExifTool-9.33/t/ExifTool_8.out +125 -0
  413. data/bin/Image-ExifTool-9.33/t/ExifTool_9.out +33 -0
  414. data/bin/Image-ExifTool-9.33/t/FLAC.t +37 -0
  415. data/bin/Image-ExifTool-9.33/t/FLAC_2.out +25 -0
  416. data/bin/Image-ExifTool-9.33/t/FLAC_3.out +19 -0
  417. data/bin/Image-ExifTool-9.33/t/FLIR.t +30 -0
  418. data/bin/Image-ExifTool-9.33/t/FLIR_2.out +104 -0
  419. data/bin/Image-ExifTool-9.33/t/FLIR_3.out +47 -0
  420. data/bin/Image-ExifTool-9.33/t/Flash.t +37 -0
  421. data/bin/Image-ExifTool-9.33/t/FlashPix.t +30 -0
  422. data/bin/Image-ExifTool-9.33/t/FlashPix_2.out +48 -0
  423. data/bin/Image-ExifTool-9.33/t/Flash_2.out +20 -0
  424. data/bin/Image-ExifTool-9.33/t/Flash_3.out +53 -0
  425. data/bin/Image-ExifTool-9.33/t/Font.t +30 -0
  426. data/bin/Image-ExifTool-9.33/t/Font_2.out +23 -0
  427. data/bin/Image-ExifTool-9.33/t/Font_3.out +35 -0
  428. data/bin/Image-ExifTool-9.33/t/Font_4.out +26 -0
  429. data/bin/Image-ExifTool-9.33/t/Font_5.out +26 -0
  430. data/bin/Image-ExifTool-9.33/t/Font_6.out +36 -0
  431. data/bin/Image-ExifTool-9.33/t/Font_7.out +36 -0
  432. data/bin/Image-ExifTool-9.33/t/FotoStation.t +38 -0
  433. data/bin/Image-ExifTool-9.33/t/FotoStation_2.out +39 -0
  434. data/bin/Image-ExifTool-9.33/t/FotoStation_3.out +3 -0
  435. data/bin/Image-ExifTool-9.33/t/FujiFilm.t +78 -0
  436. data/bin/Image-ExifTool-9.33/t/FujiFilm_2.out +87 -0
  437. data/bin/Image-ExifTool-9.33/t/FujiFilm_3.out +88 -0
  438. data/bin/Image-ExifTool-9.33/t/FujiFilm_4.out +117 -0
  439. data/bin/Image-ExifTool-9.33/t/FujiFilm_5.out +1 -0
  440. data/bin/Image-ExifTool-9.33/t/GE.t +46 -0
  441. data/bin/Image-ExifTool-9.33/t/GE_2.out +84 -0
  442. data/bin/Image-ExifTool-9.33/t/GE_3.out +84 -0
  443. data/bin/Image-ExifTool-9.33/t/GIF.t +83 -0
  444. data/bin/Image-ExifTool-9.33/t/GIF_2.out +40 -0
  445. data/bin/Image-ExifTool-9.33/t/GIF_3.out +41 -0
  446. data/bin/Image-ExifTool-9.33/t/GIF_4.out +16 -0
  447. data/bin/Image-ExifTool-9.33/t/GIMP.t +27 -0
  448. data/bin/Image-ExifTool-9.33/t/GIMP_2.out +63 -0
  449. data/bin/Image-ExifTool-9.33/t/GPS.t +42 -0
  450. data/bin/Image-ExifTool-9.33/t/GPS_2.out +94 -0
  451. data/bin/Image-ExifTool-9.33/t/GPS_3.out +96 -0
  452. data/bin/Image-ExifTool-9.33/t/GeoTiff.t +36 -0
  453. data/bin/Image-ExifTool-9.33/t/GeoTiff_2.out +36 -0
  454. data/bin/Image-ExifTool-9.33/t/GeoTiff_3.out +36 -0
  455. data/bin/Image-ExifTool-9.33/t/Geotag.t +164 -0
  456. data/bin/Image-ExifTool-9.33/t/Geotag_2.out +9 -0
  457. data/bin/Image-ExifTool-9.33/t/Geotag_3.out +6 -0
  458. data/bin/Image-ExifTool-9.33/t/Geotag_5.out +1 -0
  459. data/bin/Image-ExifTool-9.33/t/Geotag_6.out +9 -0
  460. data/bin/Image-ExifTool-9.33/t/Geotag_7.out +53 -0
  461. data/bin/Image-ExifTool-9.33/t/Geotag_8.out +15 -0
  462. data/bin/Image-ExifTool-9.33/t/HTML.t +28 -0
  463. data/bin/Image-ExifTool-9.33/t/HTML_2.out +68 -0
  464. data/bin/Image-ExifTool-9.33/t/IPTC.t +157 -0
  465. data/bin/Image-ExifTool-9.33/t/IPTC_2.out +58 -0
  466. data/bin/Image-ExifTool-9.33/t/IPTC_4.out +56 -0
  467. data/bin/Image-ExifTool-9.33/t/IPTC_5.out +1 -0
  468. data/bin/Image-ExifTool-9.33/t/IPTC_6.out +2 -0
  469. data/bin/Image-ExifTool-9.33/t/IPTC_7.out +1 -0
  470. data/bin/Image-ExifTool-9.33/t/IPTC_8.out +20 -0
  471. data/bin/Image-ExifTool-9.33/t/ITC.t +28 -0
  472. data/bin/Image-ExifTool-9.33/t/ITC_2.out +19 -0
  473. data/bin/Image-ExifTool-9.33/t/InDesign.t +61 -0
  474. data/bin/Image-ExifTool-9.33/t/InDesign_2.out +19 -0
  475. data/bin/Image-ExifTool-9.33/t/InDesign_3.out +21 -0
  476. data/bin/Image-ExifTool-9.33/t/InDesign_4.out +11 -0
  477. data/bin/Image-ExifTool-9.33/t/JVC.t +36 -0
  478. data/bin/Image-ExifTool-9.33/t/JVC_2.out +3 -0
  479. data/bin/Image-ExifTool-9.33/t/JVC_3.out +3 -0
  480. data/bin/Image-ExifTool-9.33/t/Jpeg2000.t +49 -0
  481. data/bin/Image-ExifTool-9.33/t/Jpeg2000_2.out +63 -0
  482. data/bin/Image-ExifTool-9.33/t/Jpeg2000_3.out +51 -0
  483. data/bin/Image-ExifTool-9.33/t/Jpeg2000_4.out +15 -0
  484. data/bin/Image-ExifTool-9.33/t/Kodak.t +40 -0
  485. data/bin/Image-ExifTool-9.33/t/Kodak_2.out +109 -0
  486. data/bin/Image-ExifTool-9.33/t/Kodak_3.out +119 -0
  487. data/bin/Image-ExifTool-9.33/t/KyoceraRaw.t +28 -0
  488. data/bin/Image-ExifTool-9.33/t/KyoceraRaw_2.out +27 -0
  489. data/bin/Image-ExifTool-9.33/t/LNK.t +28 -0
  490. data/bin/Image-ExifTool-9.33/t/LNK_2.out +45 -0
  491. data/bin/Image-ExifTool-9.33/t/Lang.t +40 -0
  492. data/bin/Image-ExifTool-9.33/t/Lang_1.out +1 -0
  493. data/bin/Image-ExifTool-9.33/t/Lang_10.out +46 -0
  494. data/bin/Image-ExifTool-9.33/t/Lang_11.out +46 -0
  495. data/bin/Image-ExifTool-9.33/t/Lang_12.out +46 -0
  496. data/bin/Image-ExifTool-9.33/t/Lang_13.out +46 -0
  497. data/bin/Image-ExifTool-9.33/t/Lang_14.out +46 -0
  498. data/bin/Image-ExifTool-9.33/t/Lang_15.out +46 -0
  499. data/bin/Image-ExifTool-9.33/t/Lang_16.out +46 -0
  500. data/bin/Image-ExifTool-9.33/t/Lang_17.out +46 -0
  501. data/bin/Image-ExifTool-9.33/t/Lang_18.out +46 -0
  502. data/bin/Image-ExifTool-9.33/t/Lang_2.out +46 -0
  503. data/bin/Image-ExifTool-9.33/t/Lang_3.out +46 -0
  504. data/bin/Image-ExifTool-9.33/t/Lang_4.out +46 -0
  505. data/bin/Image-ExifTool-9.33/t/Lang_5.out +46 -0
  506. data/bin/Image-ExifTool-9.33/t/Lang_6.out +46 -0
  507. data/bin/Image-ExifTool-9.33/t/Lang_7.out +46 -0
  508. data/bin/Image-ExifTool-9.33/t/Lang_8.out +46 -0
  509. data/bin/Image-ExifTool-9.33/t/Lang_9.out +46 -0
  510. data/bin/Image-ExifTool-9.33/t/M2TS.t +29 -0
  511. data/bin/Image-ExifTool-9.33/t/M2TS_2.out +27 -0
  512. data/bin/Image-ExifTool-9.33/t/MIE.t +82 -0
  513. data/bin/Image-ExifTool-9.33/t/MIE_2.out +67 -0
  514. data/bin/Image-ExifTool-9.33/t/MIE_3.out +134 -0
  515. data/bin/Image-ExifTool-9.33/t/MIE_5.out +1 -0
  516. data/bin/Image-ExifTool-9.33/t/MIE_6.out +1 -0
  517. data/bin/Image-ExifTool-9.33/t/MIFF.t +28 -0
  518. data/bin/Image-ExifTool-9.33/t/MIFF_2.out +108 -0
  519. data/bin/Image-ExifTool-9.33/t/MP3.t +29 -0
  520. data/bin/Image-ExifTool-9.33/t/MP3_2.out +45 -0
  521. data/bin/Image-ExifTool-9.33/t/MWG.t +72 -0
  522. data/bin/Image-ExifTool-9.33/t/MWG_2.out +13 -0
  523. data/bin/Image-ExifTool-9.33/t/MWG_3.out +8 -0
  524. data/bin/Image-ExifTool-9.33/t/MWG_4.out +5 -0
  525. data/bin/Image-ExifTool-9.33/t/MWG_5.out +22 -0
  526. data/bin/Image-ExifTool-9.33/t/MXF.t +27 -0
  527. data/bin/Image-ExifTool-9.33/t/MXF_2.out +78 -0
  528. data/bin/Image-ExifTool-9.33/t/Matroska.t +29 -0
  529. data/bin/Image-ExifTool-9.33/t/Matroska_2.out +64 -0
  530. data/bin/Image-ExifTool-9.33/t/Minolta.t +50 -0
  531. data/bin/Image-ExifTool-9.33/t/Minolta_2.out +133 -0
  532. data/bin/Image-ExifTool-9.33/t/Minolta_3.out +146 -0
  533. data/bin/Image-ExifTool-9.33/t/Minolta_4.out +148 -0
  534. data/bin/Image-ExifTool-9.33/t/Nikon.t +114 -0
  535. data/bin/Image-ExifTool-9.33/t/Nikon_2.out +82 -0
  536. data/bin/Image-ExifTool-9.33/t/Nikon_3.out +98 -0
  537. data/bin/Image-ExifTool-9.33/t/Nikon_4.out +174 -0
  538. data/bin/Image-ExifTool-9.33/t/Nikon_5.out +167 -0
  539. data/bin/Image-ExifTool-9.33/t/Nikon_7.out +260 -0
  540. data/bin/Image-ExifTool-9.33/t/Nikon_8.out +4 -0
  541. data/bin/Image-ExifTool-9.33/t/Olympus.t +85 -0
  542. data/bin/Image-ExifTool-9.33/t/Olympus_2.out +79 -0
  543. data/bin/Image-ExifTool-9.33/t/Olympus_3.out +81 -0
  544. data/bin/Image-ExifTool-9.33/t/Olympus_4.out +192 -0
  545. data/bin/Image-ExifTool-9.33/t/Olympus_5.out +264 -0
  546. data/bin/Image-ExifTool-9.33/t/Olympus_6.out +151 -0
  547. data/bin/Image-ExifTool-9.33/t/Olympus_7.out +482 -0
  548. data/bin/Image-ExifTool-9.33/t/OpenEXR.t +28 -0
  549. data/bin/Image-ExifTool-9.33/t/OpenEXR_2.out +23 -0
  550. data/bin/Image-ExifTool-9.33/t/PDF.t +295 -0
  551. data/bin/Image-ExifTool-9.33/t/PDF_10.out +10 -0
  552. data/bin/Image-ExifTool-9.33/t/PDF_11.out +10 -0
  553. data/bin/Image-ExifTool-9.33/t/PDF_12.out +9 -0
  554. data/bin/Image-ExifTool-9.33/t/PDF_14.out +5 -0
  555. data/bin/Image-ExifTool-9.33/t/PDF_15.out +6 -0
  556. data/bin/Image-ExifTool-9.33/t/PDF_16.out +4 -0
  557. data/bin/Image-ExifTool-9.33/t/PDF_17.out +4 -0
  558. data/bin/Image-ExifTool-9.33/t/PDF_18.out +5 -0
  559. data/bin/Image-ExifTool-9.33/t/PDF_19.out +6 -0
  560. data/bin/Image-ExifTool-9.33/t/PDF_2.out +117 -0
  561. data/bin/Image-ExifTool-9.33/t/PDF_20.out +4 -0
  562. data/bin/Image-ExifTool-9.33/t/PDF_22.out +3 -0
  563. data/bin/Image-ExifTool-9.33/t/PDF_4.out +12 -0
  564. data/bin/Image-ExifTool-9.33/t/PDF_5.out +8 -0
  565. data/bin/Image-ExifTool-9.33/t/PDF_6.out +9 -0
  566. data/bin/Image-ExifTool-9.33/t/PDF_7.out +11 -0
  567. data/bin/Image-ExifTool-9.33/t/PDF_8.out +9 -0
  568. data/bin/Image-ExifTool-9.33/t/PDF_9.out +9 -0
  569. data/bin/Image-ExifTool-9.33/t/PGF.t +28 -0
  570. data/bin/Image-ExifTool-9.33/t/PGF_2.out +32 -0
  571. data/bin/Image-ExifTool-9.33/t/PICT.t +28 -0
  572. data/bin/Image-ExifTool-9.33/t/PICT_2.out +15 -0
  573. data/bin/Image-ExifTool-9.33/t/PLIST.t +31 -0
  574. data/bin/Image-ExifTool-9.33/t/PLIST_2.out +20 -0
  575. data/bin/Image-ExifTool-9.33/t/PLIST_3.out +20 -0
  576. data/bin/Image-ExifTool-9.33/t/PNG.t +75 -0
  577. data/bin/Image-ExifTool-9.33/t/PNG_2.out +22 -0
  578. data/bin/Image-ExifTool-9.33/t/PNG_3.out +118 -0
  579. data/bin/Image-ExifTool-9.33/t/PNG_4.out +12 -0
  580. data/bin/Image-ExifTool-9.33/t/PPM.t +40 -0
  581. data/bin/Image-ExifTool-9.33/t/PPM_2.out +15 -0
  582. data/bin/Image-ExifTool-9.33/t/PPM_3.out +9 -0
  583. data/bin/Image-ExifTool-9.33/t/PSP.t +28 -0
  584. data/bin/Image-ExifTool-9.33/t/PSP_2.out +32 -0
  585. data/bin/Image-ExifTool-9.33/t/Panasonic.t +60 -0
  586. data/bin/Image-ExifTool-9.33/t/Panasonic_2.out +99 -0
  587. data/bin/Image-ExifTool-9.33/t/Panasonic_3.out +119 -0
  588. data/bin/Image-ExifTool-9.33/t/Panasonic_4.out +177 -0
  589. data/bin/Image-ExifTool-9.33/t/Panasonic_5.out +228 -0
  590. data/bin/Image-ExifTool-9.33/t/Pentax.t +50 -0
  591. data/bin/Image-ExifTool-9.33/t/Pentax_2.out +219 -0
  592. data/bin/Image-ExifTool-9.33/t/Pentax_3.out +262 -0
  593. data/bin/Image-ExifTool-9.33/t/Pentax_4.out +123 -0
  594. data/bin/Image-ExifTool-9.33/t/PhotoCD.t +28 -0
  595. data/bin/Image-ExifTool-9.33/t/PhotoCD_2.out +35 -0
  596. data/bin/Image-ExifTool-9.33/t/PhotoMechanic.t +38 -0
  597. data/bin/Image-ExifTool-9.33/t/PhotoMechanic_2.out +81 -0
  598. data/bin/Image-ExifTool-9.33/t/PhotoMechanic_3.out +2 -0
  599. data/bin/Image-ExifTool-9.33/t/Photoshop.t +42 -0
  600. data/bin/Image-ExifTool-9.33/t/Photoshop_2.out +96 -0
  601. data/bin/Image-ExifTool-9.33/t/Photoshop_3.out +108 -0
  602. data/bin/Image-ExifTool-9.33/t/PostScript.t +49 -0
  603. data/bin/Image-ExifTool-9.33/t/PostScript_2.out +64 -0
  604. data/bin/Image-ExifTool-9.33/t/PostScript_3.out +132 -0
  605. data/bin/Image-ExifTool-9.33/t/QuickTime.t +31 -0
  606. data/bin/Image-ExifTool-9.33/t/QuickTime_2.out +128 -0
  607. data/bin/Image-ExifTool-9.33/t/QuickTime_3.out +69 -0
  608. data/bin/Image-ExifTool-9.33/t/RIFF.t +31 -0
  609. data/bin/Image-ExifTool-9.33/t/RIFF_2.out +24 -0
  610. data/bin/Image-ExifTool-9.33/t/RIFF_3.out +52 -0
  611. data/bin/Image-ExifTool-9.33/t/RIFF_4.out +16 -0
  612. data/bin/Image-ExifTool-9.33/t/RTF.t +27 -0
  613. data/bin/Image-ExifTool-9.33/t/RTF_2.out +20 -0
  614. data/bin/Image-ExifTool-9.33/t/Radiance.t +28 -0
  615. data/bin/Image-ExifTool-9.33/t/Radiance_2.out +22 -0
  616. data/bin/Image-ExifTool-9.33/t/Real.t +46 -0
  617. data/bin/Image-ExifTool-9.33/t/Real_2.out +68 -0
  618. data/bin/Image-ExifTool-9.33/t/Real_3.out +18 -0
  619. data/bin/Image-ExifTool-9.33/t/Real_4.out +11 -0
  620. data/bin/Image-ExifTool-9.33/t/Ricoh.t +47 -0
  621. data/bin/Image-ExifTool-9.33/t/Ricoh_2.out +70 -0
  622. data/bin/Image-ExifTool-9.33/t/Ricoh_3.out +98 -0
  623. data/bin/Image-ExifTool-9.33/t/Ricoh_4.out +112 -0
  624. data/bin/Image-ExifTool-9.33/t/Sanyo.t +39 -0
  625. data/bin/Image-ExifTool-9.33/t/Sanyo_2.out +101 -0
  626. data/bin/Image-ExifTool-9.33/t/Sanyo_3.out +111 -0
  627. data/bin/Image-ExifTool-9.33/t/Sigma.t +60 -0
  628. data/bin/Image-ExifTool-9.33/t/Sigma_2.out +91 -0
  629. data/bin/Image-ExifTool-9.33/t/Sigma_3.out +94 -0
  630. data/bin/Image-ExifTool-9.33/t/Sigma_4.out +63 -0
  631. data/bin/Image-ExifTool-9.33/t/Sigma_5.out +192 -0
  632. data/bin/Image-ExifTool-9.33/t/Sony.t +62 -0
  633. data/bin/Image-ExifTool-9.33/t/Sony_2.out +84 -0
  634. data/bin/Image-ExifTool-9.33/t/Sony_3.out +85 -0
  635. data/bin/Image-ExifTool-9.33/t/Sony_5.out +32 -0
  636. data/bin/Image-ExifTool-9.33/t/TestLib.pm +417 -0
  637. data/bin/Image-ExifTool-9.33/t/Unknown.t +36 -0
  638. data/bin/Image-ExifTool-9.33/t/Unknown_2.out +90 -0
  639. data/bin/Image-ExifTool-9.33/t/Unknown_3.out +90 -0
  640. data/bin/Image-ExifTool-9.33/t/Vorbis.t +28 -0
  641. data/bin/Image-ExifTool-9.33/t/Vorbis_2.out +28 -0
  642. data/bin/Image-ExifTool-9.33/t/Writer.t +913 -0
  643. data/bin/Image-ExifTool-9.33/t/Writer_10.out +240 -0
  644. data/bin/Image-ExifTool-9.33/t/Writer_11.out +37 -0
  645. data/bin/Image-ExifTool-9.33/t/Writer_13.out +160 -0
  646. data/bin/Image-ExifTool-9.33/t/Writer_14.out +67 -0
  647. data/bin/Image-ExifTool-9.33/t/Writer_15.out +171 -0
  648. data/bin/Image-ExifTool-9.33/t/Writer_16.out +1 -0
  649. data/bin/Image-ExifTool-9.33/t/Writer_17.out +1 -0
  650. data/bin/Image-ExifTool-9.33/t/Writer_18.out +3 -0
  651. data/bin/Image-ExifTool-9.33/t/Writer_19.out +34 -0
  652. data/bin/Image-ExifTool-9.33/t/Writer_2.out +168 -0
  653. data/bin/Image-ExifTool-9.33/t/Writer_22.out +4 -0
  654. data/bin/Image-ExifTool-9.33/t/Writer_24.out +1 -0
  655. data/bin/Image-ExifTool-9.33/t/Writer_25.out +38 -0
  656. data/bin/Image-ExifTool-9.33/t/Writer_26.out +32 -0
  657. data/bin/Image-ExifTool-9.33/t/Writer_27.out +14 -0
  658. data/bin/Image-ExifTool-9.33/t/Writer_28.out +1 -0
  659. data/bin/Image-ExifTool-9.33/t/Writer_29.out +2 -0
  660. data/bin/Image-ExifTool-9.33/t/Writer_30.out +2 -0
  661. data/bin/Image-ExifTool-9.33/t/Writer_31.out +97 -0
  662. data/bin/Image-ExifTool-9.33/t/Writer_32.out +3 -0
  663. data/bin/Image-ExifTool-9.33/t/Writer_33.out +3 -0
  664. data/bin/Image-ExifTool-9.33/t/Writer_34.out +3 -0
  665. data/bin/Image-ExifTool-9.33/t/Writer_35.out +187 -0
  666. data/bin/Image-ExifTool-9.33/t/Writer_36.out +2 -0
  667. data/bin/Image-ExifTool-9.33/t/Writer_37.out +2 -0
  668. data/bin/Image-ExifTool-9.33/t/Writer_38.out +62 -0
  669. data/bin/Image-ExifTool-9.33/t/Writer_39.out +4 -0
  670. data/bin/Image-ExifTool-9.33/t/Writer_4.out +85 -0
  671. data/bin/Image-ExifTool-9.33/t/Writer_40.out +4 -0
  672. data/bin/Image-ExifTool-9.33/t/Writer_41.out +3 -0
  673. data/bin/Image-ExifTool-9.33/t/Writer_42.out +5 -0
  674. data/bin/Image-ExifTool-9.33/t/Writer_43.out +5 -0
  675. data/bin/Image-ExifTool-9.33/t/Writer_44.out +2 -0
  676. data/bin/Image-ExifTool-9.33/t/Writer_45.out +1 -0
  677. data/bin/Image-ExifTool-9.33/t/Writer_46.out +77 -0
  678. data/bin/Image-ExifTool-9.33/t/Writer_47.out +56 -0
  679. data/bin/Image-ExifTool-9.33/t/Writer_48.out +29 -0
  680. data/bin/Image-ExifTool-9.33/t/Writer_50.out +3 -0
  681. data/bin/Image-ExifTool-9.33/t/Writer_51.out +386 -0
  682. data/bin/Image-ExifTool-9.33/t/Writer_6.out +182 -0
  683. data/bin/Image-ExifTool-9.33/t/Writer_7.out +149 -0
  684. data/bin/Image-ExifTool-9.33/t/Writer_9.out +237 -0
  685. data/bin/Image-ExifTool-9.33/t/XMP.t +521 -0
  686. data/bin/Image-ExifTool-9.33/t/XMP_10.out +33 -0
  687. data/bin/Image-ExifTool-9.33/t/XMP_11.out +59 -0
  688. data/bin/Image-ExifTool-9.33/t/XMP_12.out +4 -0
  689. data/bin/Image-ExifTool-9.33/t/XMP_13.out +5 -0
  690. data/bin/Image-ExifTool-9.33/t/XMP_14.out +3 -0
  691. data/bin/Image-ExifTool-9.33/t/XMP_15.out +3 -0
  692. data/bin/Image-ExifTool-9.33/t/XMP_16.out +5 -0
  693. data/bin/Image-ExifTool-9.33/t/XMP_17.out +6 -0
  694. data/bin/Image-ExifTool-9.33/t/XMP_18.out +10 -0
  695. data/bin/Image-ExifTool-9.33/t/XMP_19.out +35 -0
  696. data/bin/Image-ExifTool-9.33/t/XMP_2.out +138 -0
  697. data/bin/Image-ExifTool-9.33/t/XMP_20.out +35 -0
  698. data/bin/Image-ExifTool-9.33/t/XMP_21.out +38 -0
  699. data/bin/Image-ExifTool-9.33/t/XMP_22.out +38 -0
  700. data/bin/Image-ExifTool-9.33/t/XMP_23.out +9 -0
  701. data/bin/Image-ExifTool-9.33/t/XMP_24.out +31 -0
  702. data/bin/Image-ExifTool-9.33/t/XMP_25.out +28 -0
  703. data/bin/Image-ExifTool-9.33/t/XMP_26.out +52 -0
  704. data/bin/Image-ExifTool-9.33/t/XMP_27.out +93 -0
  705. data/bin/Image-ExifTool-9.33/t/XMP_28.out +44 -0
  706. data/bin/Image-ExifTool-9.33/t/XMP_29.out +24 -0
  707. data/bin/Image-ExifTool-9.33/t/XMP_3.out +136 -0
  708. data/bin/Image-ExifTool-9.33/t/XMP_30.out +90 -0
  709. data/bin/Image-ExifTool-9.33/t/XMP_31.out +19 -0
  710. data/bin/Image-ExifTool-9.33/t/XMP_32.out +2 -0
  711. data/bin/Image-ExifTool-9.33/t/XMP_34.out +2 -0
  712. data/bin/Image-ExifTool-9.33/t/XMP_36.out +18 -0
  713. data/bin/Image-ExifTool-9.33/t/XMP_37.out +35 -0
  714. data/bin/Image-ExifTool-9.33/t/XMP_39.out +44 -0
  715. data/bin/Image-ExifTool-9.33/t/XMP_40.out +3 -0
  716. data/bin/Image-ExifTool-9.33/t/XMP_41.out +175 -0
  717. data/bin/Image-ExifTool-9.33/t/XMP_5.out +29 -0
  718. data/bin/Image-ExifTool-9.33/t/XMP_6.out +87 -0
  719. data/bin/Image-ExifTool-9.33/t/XMP_7.out +118 -0
  720. data/bin/Image-ExifTool-9.33/t/XMP_8.out +17 -0
  721. data/bin/Image-ExifTool-9.33/t/XMP_9.out +36 -0
  722. data/bin/Image-ExifTool-9.33/t/ZIP.t +69 -0
  723. data/bin/Image-ExifTool-9.33/t/ZIP_2.out +18 -0
  724. data/bin/Image-ExifTool-9.33/t/ZIP_3.out +17 -0
  725. data/bin/Image-ExifTool-9.33/t/ZIP_4.out +213 -0
  726. data/bin/Image-ExifTool-9.33/t/ZIP_5.out +134 -0
  727. data/bin/Image-ExifTool-9.33/t/ZIP_6.out +49 -0
  728. data/bin/Image-ExifTool-9.33/t/ZIP_7.out +28 -0
  729. data/bin/Image-ExifTool-9.33/t/images/AFCP.jpg +0 -0
  730. data/bin/Image-ExifTool-9.33/t/images/AIFF.aif +0 -0
  731. data/bin/Image-ExifTool-9.33/t/images/APE.ape +0 -0
  732. data/bin/Image-ExifTool-9.33/t/images/APE.mpc +0 -0
  733. data/bin/Image-ExifTool-9.33/t/images/ASF.wmv +0 -0
  734. data/bin/Image-ExifTool-9.33/t/images/BMP.bmp +0 -0
  735. data/bin/Image-ExifTool-9.33/t/images/BigTIFF.btf +0 -0
  736. data/bin/Image-ExifTool-9.33/t/images/Canon.jpg +0 -0
  737. data/bin/Image-ExifTool-9.33/t/images/Canon1DmkIII.jpg +0 -0
  738. data/bin/Image-ExifTool-9.33/t/images/CanonRaw.cr2 +0 -0
  739. data/bin/Image-ExifTool-9.33/t/images/CanonRaw.crw +0 -0
  740. data/bin/Image-ExifTool-9.33/t/images/CanonVRD.vrd +0 -0
  741. data/bin/Image-ExifTool-9.33/t/images/CaptureOne.eip +0 -0
  742. data/bin/Image-ExifTool-9.33/t/images/Casio.jpg +0 -0
  743. data/bin/Image-ExifTool-9.33/t/images/Casio2.jpg +0 -0
  744. data/bin/Image-ExifTool-9.33/t/images/CasioQVCI.jpg +0 -0
  745. data/bin/Image-ExifTool-9.33/t/images/DICOM.dcm +0 -0
  746. data/bin/Image-ExifTool-9.33/t/images/DNG.dng +0 -0
  747. data/bin/Image-ExifTool-9.33/t/images/DV.dv +0 -0
  748. data/bin/Image-ExifTool-9.33/t/images/DjVu.djvu +0 -0
  749. data/bin/Image-ExifTool-9.33/t/images/EXE.elf +0 -0
  750. data/bin/Image-ExifTool-9.33/t/images/EXE.exe +0 -0
  751. data/bin/Image-ExifTool-9.33/t/images/EXE.macho +0 -0
  752. data/bin/Image-ExifTool-9.33/t/images/ExifTool.jpg +0 -0
  753. data/bin/Image-ExifTool-9.33/t/images/ExifTool.tif +0 -0
  754. data/bin/Image-ExifTool-9.33/t/images/ExtendedXMP.jpg +0 -0
  755. data/bin/Image-ExifTool-9.33/t/images/FLAC.flac +0 -0
  756. data/bin/Image-ExifTool-9.33/t/images/FLAC.ogg +0 -0
  757. data/bin/Image-ExifTool-9.33/t/images/FLIR.fpf +0 -0
  758. data/bin/Image-ExifTool-9.33/t/images/FLIR.jpg +0 -0
  759. data/bin/Image-ExifTool-9.33/t/images/Flash.flv +0 -0
  760. data/bin/Image-ExifTool-9.33/t/images/Flash.swf +0 -0
  761. data/bin/Image-ExifTool-9.33/t/images/FlashPix.ppt +0 -0
  762. data/bin/Image-ExifTool-9.33/t/images/Font.afm +28 -0
  763. data/bin/Image-ExifTool-9.33/t/images/Font.dfont +0 -0
  764. data/bin/Image-ExifTool-9.33/t/images/Font.pfa +38 -0
  765. data/bin/Image-ExifTool-9.33/t/images/Font.pfb +0 -0
  766. data/bin/Image-ExifTool-9.33/t/images/Font.pfm +0 -0
  767. data/bin/Image-ExifTool-9.33/t/images/Font.ttf +0 -0
  768. data/bin/Image-ExifTool-9.33/t/images/FotoStation.jpg +0 -0
  769. data/bin/Image-ExifTool-9.33/t/images/FujiFilm.jpg +0 -0
  770. data/bin/Image-ExifTool-9.33/t/images/FujiFilm.raf +0 -0
  771. data/bin/Image-ExifTool-9.33/t/images/GE.jpg +0 -0
  772. data/bin/Image-ExifTool-9.33/t/images/GIF.gif +0 -0
  773. data/bin/Image-ExifTool-9.33/t/images/GIMP.xcf +0 -0
  774. data/bin/Image-ExifTool-9.33/t/images/GPS.jpg +0 -0
  775. data/bin/Image-ExifTool-9.33/t/images/GeoTiff.tif +0 -0
  776. data/bin/Image-ExifTool-9.33/t/images/Geotag.gpx +23 -0
  777. data/bin/Image-ExifTool-9.33/t/images/Geotag.igc +24 -0
  778. data/bin/Image-ExifTool-9.33/t/images/Geotag.log +13 -0
  779. data/bin/Image-ExifTool-9.33/t/images/Geotag.xml +23 -0
  780. data/bin/Image-ExifTool-9.33/t/images/Geotag2.log +7 -0
  781. data/bin/Image-ExifTool-9.33/t/images/HTML.html +77 -0
  782. data/bin/Image-ExifTool-9.33/t/images/IPTC.jpg +0 -0
  783. data/bin/Image-ExifTool-9.33/t/images/ITC.itc +0 -0
  784. data/bin/Image-ExifTool-9.33/t/images/InDesign.indd +0 -0
  785. data/bin/Image-ExifTool-9.33/t/images/JVC.jpg +0 -0
  786. data/bin/Image-ExifTool-9.33/t/images/JVC2.jpg +0 -0
  787. data/bin/Image-ExifTool-9.33/t/images/Jpeg2000.j2c +0 -0
  788. data/bin/Image-ExifTool-9.33/t/images/Jpeg2000.jp2 +0 -0
  789. data/bin/Image-ExifTool-9.33/t/images/Kodak.jpg +0 -0
  790. data/bin/Image-ExifTool-9.33/t/images/KyoceraRaw.raw +0 -0
  791. data/bin/Image-ExifTool-9.33/t/images/LNK.lnk +0 -0
  792. data/bin/Image-ExifTool-9.33/t/images/M2TS.mts +0 -0
  793. data/bin/Image-ExifTool-9.33/t/images/MIE.mie +0 -0
  794. data/bin/Image-ExifTool-9.33/t/images/MIFF.miff +0 -0
  795. data/bin/Image-ExifTool-9.33/t/images/MP3.mp3 +0 -0
  796. data/bin/Image-ExifTool-9.33/t/images/MWG.jpg +0 -0
  797. data/bin/Image-ExifTool-9.33/t/images/MXF.mxf +0 -0
  798. data/bin/Image-ExifTool-9.33/t/images/Matroska.mkv +0 -0
  799. data/bin/Image-ExifTool-9.33/t/images/Minolta.jpg +0 -0
  800. data/bin/Image-ExifTool-9.33/t/images/Minolta.mrw +0 -0
  801. data/bin/Image-ExifTool-9.33/t/images/Nikon.jpg +0 -0
  802. data/bin/Image-ExifTool-9.33/t/images/Nikon.nef +0 -0
  803. data/bin/Image-ExifTool-9.33/t/images/NikonD2Hs.jpg +0 -0
  804. data/bin/Image-ExifTool-9.33/t/images/NikonD70.jpg +0 -0
  805. data/bin/Image-ExifTool-9.33/t/images/OOXML.docx +0 -0
  806. data/bin/Image-ExifTool-9.33/t/images/Olympus.jpg +0 -0
  807. data/bin/Image-ExifTool-9.33/t/images/Olympus2.jpg +0 -0
  808. data/bin/Image-ExifTool-9.33/t/images/OlympusE1.jpg +0 -0
  809. data/bin/Image-ExifTool-9.33/t/images/OpenDoc.ods +0 -0
  810. data/bin/Image-ExifTool-9.33/t/images/OpenEXR.exr +0 -0
  811. data/bin/Image-ExifTool-9.33/t/images/PDF.pdf +0 -0
  812. data/bin/Image-ExifTool-9.33/t/images/PDF2.pdf +0 -0
  813. data/bin/Image-ExifTool-9.33/t/images/PGF.pgf +0 -0
  814. data/bin/Image-ExifTool-9.33/t/images/PICT.pict +0 -0
  815. data/bin/Image-ExifTool-9.33/t/images/PLIST-bin.plist +0 -0
  816. data/bin/Image-ExifTool-9.33/t/images/PLIST-xml.plist +35 -0
  817. data/bin/Image-ExifTool-9.33/t/images/PNG.png +0 -0
  818. data/bin/Image-ExifTool-9.33/t/images/PPM.ppm +5 -0
  819. data/bin/Image-ExifTool-9.33/t/images/PSP.psp +0 -0
  820. data/bin/Image-ExifTool-9.33/t/images/Panasonic.jpg +0 -0
  821. data/bin/Image-ExifTool-9.33/t/images/Panasonic.rw2 +0 -0
  822. data/bin/Image-ExifTool-9.33/t/images/Pentax.avi +0 -0
  823. data/bin/Image-ExifTool-9.33/t/images/Pentax.jpg +0 -0
  824. data/bin/Image-ExifTool-9.33/t/images/PhotoCD.pcd +0 -0
  825. data/bin/Image-ExifTool-9.33/t/images/PhotoMechanic.jpg +0 -0
  826. data/bin/Image-ExifTool-9.33/t/images/Photoshop.psd +0 -0
  827. data/bin/Image-ExifTool-9.33/t/images/PostScript.eps +108 -0
  828. data/bin/Image-ExifTool-9.33/t/images/QuickTime.m4a +0 -0
  829. data/bin/Image-ExifTool-9.33/t/images/QuickTime.mov +0 -0
  830. data/bin/Image-ExifTool-9.33/t/images/RIFF.avi +0 -0
  831. data/bin/Image-ExifTool-9.33/t/images/RIFF.wav +0 -0
  832. data/bin/Image-ExifTool-9.33/t/images/RIFF.webp +0 -0
  833. data/bin/Image-ExifTool-9.33/t/images/RTF.rtf +25 -0
  834. data/bin/Image-ExifTool-9.33/t/images/Radiance.hdr +0 -0
  835. data/bin/Image-ExifTool-9.33/t/images/Real.ra +0 -0
  836. data/bin/Image-ExifTool-9.33/t/images/Real.ram +1 -0
  837. data/bin/Image-ExifTool-9.33/t/images/Real.rm +0 -0
  838. data/bin/Image-ExifTool-9.33/t/images/Ricoh.jpg +0 -0
  839. data/bin/Image-ExifTool-9.33/t/images/Ricoh2.jpg +0 -0
  840. data/bin/Image-ExifTool-9.33/t/images/Sanyo.jpg +0 -0
  841. data/bin/Image-ExifTool-9.33/t/images/Sigma.jpg +0 -0
  842. data/bin/Image-ExifTool-9.33/t/images/Sigma.x3f +0 -0
  843. data/bin/Image-ExifTool-9.33/t/images/SigmaDP2.x3f +0 -0
  844. data/bin/Image-ExifTool-9.33/t/images/Sony.jpg +0 -0
  845. data/bin/Image-ExifTool-9.33/t/images/Sony.pmp +0 -0
  846. data/bin/Image-ExifTool-9.33/t/images/Unknown.jpg +0 -0
  847. data/bin/Image-ExifTool-9.33/t/images/Vorbis.ogg +0 -0
  848. data/bin/Image-ExifTool-9.33/t/images/Writer.jpg +0 -0
  849. data/bin/Image-ExifTool-9.33/t/images/XMP.inx +108 -0
  850. data/bin/Image-ExifTool-9.33/t/images/XMP.jpg +0 -0
  851. data/bin/Image-ExifTool-9.33/t/images/XMP.svg +33 -0
  852. data/bin/Image-ExifTool-9.33/t/images/XMP.xml +98 -0
  853. data/bin/Image-ExifTool-9.33/t/images/XMP.xmp +99 -0
  854. data/bin/Image-ExifTool-9.33/t/images/XMP2.xmp +25 -0
  855. data/bin/Image-ExifTool-9.33/t/images/XMP3.xmp +43 -0
  856. data/bin/Image-ExifTool-9.33/t/images/XMP4.xmp +93 -0
  857. data/bin/Image-ExifTool-9.33/t/images/XMP5.xmp +158 -0
  858. data/bin/Image-ExifTool-9.33/t/images/ZIP.gz +0 -0
  859. data/bin/Image-ExifTool-9.33/t/images/ZIP.zip +0 -0
  860. data/bin/Image-ExifTool-9.33/t/images/iWork.numbers +0 -0
  861. data/lib/exiftool_vendored.rb +10 -0
  862. data/lib/exiftool_vendored/version.rb +3 -0
  863. data/lib/exiftool_vendored/version_extractor.rb +17 -0
  864. metadata +977 -0
@@ -0,0 +1,235 @@
1
+ #------------------------------------------------------------------------------
2
+ # File: CaptureOne.pm
3
+ #
4
+ # Description: Read Capture One EIP and COS files
5
+ #
6
+ # Revisions: 2009/11/01 - P. Harvey Created
7
+ #
8
+ # Notes: The EIP format is a ZIP file containing an image (IIQ or TIFF)
9
+ # and some settings files (COS). COS files are XML based.
10
+ #------------------------------------------------------------------------------
11
+
12
+ package Image::ExifTool::CaptureOne;
13
+
14
+ use strict;
15
+ use vars qw($VERSION);
16
+ use Image::ExifTool qw(:DataAccess :Utils);
17
+ use Image::ExifTool::XMP;
18
+ use Image::ExifTool::ZIP;
19
+
20
+ $VERSION = '1.03';
21
+
22
+ # CaptureOne COS XML tags
23
+ # - tags are added dynamically when encountered
24
+ # - this table is not listed in tag name docs
25
+ %Image::ExifTool::CaptureOne::Main = (
26
+ GROUPS => { 0 => 'XML', 1 => 'XML', 2 => 'Image' },
27
+ PROCESS_PROC => \&Image::ExifTool::XMP::ProcessXMP,
28
+ VARS => { NO_ID => 1 },
29
+ ColorCorrections => { ValueConv => '\$val' }, # (long list of floating point numbers)
30
+ );
31
+
32
+ #------------------------------------------------------------------------------
33
+ # We found an XMP property name/value
34
+ # Inputs: 0) attribute list ref, 1) attr hash ref,
35
+ # 2) property name ref, 3) property value ref
36
+ # Returns: true if value was changed
37
+ sub HandleCOSAttrs($$$$)
38
+ {
39
+ my ($attrList, $attrs, $prop, $valPt) = @_;
40
+ my $changed;
41
+ if (not length $$valPt and defined $$attrs{K} and defined $$attrs{V}) {
42
+ $$prop = $$attrs{K};
43
+ $$valPt = $$attrs{V};
44
+ # remove these attributes from the list
45
+ my @attrs = @$attrList;
46
+ @$attrList = ( );
47
+ my $a;
48
+ foreach $a (@attrs) {
49
+ if ($a eq 'K' or $a eq 'V') {
50
+ delete $$attrs{$a};
51
+ } else {
52
+ push @$attrList, $a;
53
+ }
54
+ }
55
+ $changed = 1;
56
+ }
57
+ return $changed;
58
+ }
59
+
60
+ #------------------------------------------------------------------------------
61
+ # We found a COS property name/value
62
+ # Inputs: 0) ExifTool object ref, 1) tag table ref
63
+ # 2) reference to array of XMP property names (last is current property)
64
+ # 3) property value, 4) attribute hash ref (not used here)
65
+ # Returns: 1 if valid tag was found
66
+ sub FoundCOS($$$$;$)
67
+ {
68
+ my ($exifTool, $tagTablePtr, $props, $val, $attrs) = @_;
69
+
70
+ my $tag = $$props[-1];
71
+ unless ($$tagTablePtr{$tag}) {
72
+ $exifTool->VPrint(0, " | [adding $tag]\n");
73
+ my $name = ucfirst $tag;
74
+ $name =~ tr/-_a-zA-Z0-9//dc;
75
+ return 0 unless length $tag;
76
+ my %tagInfo = ( Name => $tag );
77
+ # try formatting any tag with "Date" in the name as a date
78
+ # (shouldn't affect non-date tags)
79
+ if ($name =~ /Date(?![a-z])/) {
80
+ $tagInfo{Groups} = { 2 => 'Time' };
81
+ $tagInfo{ValueConv} = 'Image::ExifTool::XMP::ConvertXMPDate($val,1)';
82
+ $tagInfo{PrintConv} = '$self->ConvertDateTime($val)';
83
+ }
84
+ AddTagToTable($tagTablePtr, $tag, \%tagInfo);
85
+ }
86
+ # convert from UTF8 to ExifTool Charset
87
+ $val = $exifTool->Decode($val, "UTF8");
88
+ # un-escape XML character entities
89
+ $val = Image::ExifTool::XMP::UnescapeXML($val);
90
+ $exifTool->HandleTag($tagTablePtr, $tag, $val);
91
+ return 0;
92
+ }
93
+
94
+ #------------------------------------------------------------------------------
95
+ # Extract information from a COS file
96
+ # Inputs: 0) ExifTool object reference, 1) dirInfo reference
97
+ # Returns: 1 on success, 0 if this wasn't a valid XML file
98
+ sub ProcessCOS($$)
99
+ {
100
+ my ($exifTool, $dirInfo) = @_;
101
+
102
+ # process using XMP module, but override handling of attributes and tags
103
+ $$dirInfo{XMPParseOpts} = {
104
+ AttrProc => \&HandleCOSAttrs,
105
+ FoundProc => \&FoundCOS,
106
+ };
107
+ my $tagTablePtr = GetTagTable('Image::ExifTool::CaptureOne::Main');
108
+ my $success = $exifTool->ProcessDirectory($dirInfo, $tagTablePtr);
109
+ delete $$dirInfo{XMLParseArgs};
110
+ return $success;
111
+ }
112
+
113
+ #------------------------------------------------------------------------------
114
+ # Extract information from a CaptureOne EIP file
115
+ # Inputs: 0) ExifTool object reference, 1) dirInfo reference
116
+ # Returns: 1
117
+ # Notes: Upon entry to this routine, the file type has already been verified
118
+ # and the dirInfo hash contains a ZIP element unique to this process proc:
119
+ # ZIP - reference to Archive::Zip object for this file
120
+ sub ProcessEIP($$)
121
+ {
122
+ my ($exifTool, $dirInfo) = @_;
123
+ my $zip = $$dirInfo{ZIP};
124
+ my ($file, $buff, $status, $member, %parseFile);
125
+
126
+ $exifTool->SetFileType('EIP');
127
+
128
+ # must catch all Archive::Zip warnings
129
+ local $SIG{'__WARN__'} = \&Image::ExifTool::ZIP::WarnProc;
130
+ # find all manifest files
131
+ my @members = $zip->membersMatching('^manifest\d*.xml$');
132
+ # and choose the one with the highest version number (any better ideas?)
133
+ while (@members) {
134
+ my $m = shift @members;
135
+ my $f = $m->fileName();
136
+ next if $file and $file gt $f;
137
+ $member = $m;
138
+ $file = $f;
139
+ }
140
+ # get file names from our chosen manifest file
141
+ if ($member) {
142
+ ($buff, $status) = $zip->contents($member);
143
+ if (not $status) {
144
+ my $foundImage;
145
+ while ($buff =~ m{<(RawPath|SettingsPath)>(.*?)</\1>}sg) {
146
+ $file = $2;
147
+ next unless $file =~ /\.(cos|iiq|jpe?g|tiff?)$/i;
148
+ $parseFile{$file} = 1; # set flag to parse this file
149
+ $foundImage = 1 unless $file =~ /\.cos$/i;
150
+ }
151
+ # ignore manifest unless it contained a valid image
152
+ undef %parseFile unless $foundImage;
153
+ }
154
+ }
155
+ # extract meta information from embedded files
156
+ my $docNum = 0;
157
+ @members = $zip->members(); # get all members
158
+ foreach $member (@members) {
159
+ # get filename of this ZIP member
160
+ $file = $member->fileName();
161
+ next unless defined $file;
162
+ $exifTool->VPrint(0, "File: $file\n");
163
+ # set the document number and extract ZIP tags
164
+ $$exifTool{DOC_NUM} = ++$docNum;
165
+ Image::ExifTool::ZIP::HandleMember($exifTool, $member);
166
+ if (%parseFile) {
167
+ next unless $parseFile{$file};
168
+ } else {
169
+ # reading the manifest didn't work, so look for image files in the
170
+ # root directory and .cos files in the CaptureOne directory
171
+ next unless $file =~ m{^([^/]+\.(iiq|jpe?g|tiff?)|CaptureOne/.*\.cos)$}i;
172
+ }
173
+ # extract the contents of the file
174
+ # Note: this could use a LOT of memory here for RAW images...
175
+ ($buff, $status) = $zip->contents($member);
176
+ $status and $exifTool->Warn("Error extracting $file"), next;
177
+ if ($file =~ /\.cos$/i) {
178
+ # process Capture One Settings files
179
+ my %dirInfo = (
180
+ DataPt => \$buff,
181
+ DirLen => length $buff,
182
+ DataLen => length $buff,
183
+ );
184
+ ProcessCOS($exifTool, \%dirInfo);
185
+ } else {
186
+ # set HtmlDump error if necessary because it doesn't work with embedded files
187
+ if ($$exifTool{HTML_DUMP}) {
188
+ $$exifTool{HTML_DUMP}{Error} = "Sorry, can't dump images embedded in ZIP files";
189
+ }
190
+ # process IIQ, JPEG and TIFF images
191
+ $exifTool->ExtractInfo(\$buff, { ReEntry => 1 });
192
+ }
193
+ undef $buff; # (free memory now)
194
+ }
195
+ delete $$exifTool{DOC_NUM};
196
+ return 1;
197
+ }
198
+
199
+ 1; # end
200
+
201
+ __END__
202
+
203
+ =head1 NAME
204
+
205
+ Image::ExifTool::CaptureOne - Read Capture One EIP and COS files
206
+
207
+ =head1 SYNOPSIS
208
+
209
+ This module is used by Image::ExifTool
210
+
211
+ =head1 DESCRIPTION
212
+
213
+ This module contains definitions required by Image::ExifTool to extract meta
214
+ information from Capture One EIP (Enhanced Image Package) and COS (Capture
215
+ One Settings) files.
216
+
217
+ =head1 NOTES
218
+
219
+ The EIP format is a ZIP file containing an image (IIQ or TIFF) and some
220
+ settings files (COS).
221
+
222
+ =head1 AUTHOR
223
+
224
+ Copyright 2003-2013, Phil Harvey (phil at owl.phy.queensu.ca)
225
+
226
+ This library is free software; you can redistribute it and/or modify it
227
+ under the same terms as Perl itself.
228
+
229
+ =head1 SEE ALSO
230
+
231
+ L<Image::ExifTool::TagNames/ZIP Tags>,
232
+ L<Image::ExifTool(3pm)|Image::ExifTool>
233
+
234
+ =cut
235
+
@@ -0,0 +1,2013 @@
1
+ #------------------------------------------------------------------------------
2
+ # File: Casio.pm
3
+ #
4
+ # Description: Casio EXIF maker notes tags
5
+ #
6
+ # Revisions: 12/09/2003 - P. Harvey Created
7
+ # 09/10/2004 - P. Harvey Added MakerNote2 (thanks to Joachim Loehr)
8
+ #
9
+ # References: 1) http://park2.wakwak.com/~tsuruzoh/Computer/Digicams/exif-e.html
10
+ # 2) Joachim Loehr private communication
11
+ # 3) http://homepage3.nifty.com/kamisaka/makernote/makernote_casio.htm
12
+ # 4) http://www.gvsoft.homedns.org/exif/makernote-casio.html
13
+ # 5) Robert Chi private communication (EX-F1)
14
+ # 6) http://u88.n24.queensu.ca/exiftool/forum/index.php/topic,3701.html
15
+ # JD) Jens Duttke private communication
16
+ #------------------------------------------------------------------------------
17
+
18
+ package Image::ExifTool::Casio;
19
+
20
+ use strict;
21
+ use vars qw($VERSION);
22
+ use Image::ExifTool::Exif;
23
+
24
+ $VERSION = '1.34';
25
+
26
+ # older Casio maker notes (ref 1)
27
+ %Image::ExifTool::Casio::Main = (
28
+ WRITE_PROC => \&Image::ExifTool::Exif::WriteExif,
29
+ CHECK_PROC => \&Image::ExifTool::Exif::CheckExif,
30
+ WRITABLE => 1,
31
+ GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' },
32
+ 0x0001 => {
33
+ Name => 'RecordingMode' ,
34
+ Writable => 'int16u',
35
+ PrintConv => {
36
+ 1 => 'Single Shutter',
37
+ 2 => 'Panorama',
38
+ 3 => 'Night Scene',
39
+ 4 => 'Portrait',
40
+ 5 => 'Landscape',
41
+ 7 => 'Panorama', #4
42
+ 10 => 'Night Scene', #4
43
+ 15 => 'Portrait', #4
44
+ 16 => 'Landscape', #4
45
+ },
46
+ },
47
+ 0x0002 => {
48
+ Name => 'Quality',
49
+ Writable => 'int16u',
50
+ PrintConv => { 1 => 'Economy', 2 => 'Normal', 3 => 'Fine' },
51
+ },
52
+ 0x0003 => {
53
+ Name => 'FocusMode',
54
+ Writable => 'int16u',
55
+ PrintConv => {
56
+ 2 => 'Macro',
57
+ 3 => 'Auto',
58
+ 4 => 'Manual',
59
+ 5 => 'Infinity',
60
+ 7 => 'Spot AF', #4
61
+ },
62
+ },
63
+ 0x0004 => [
64
+ {
65
+ Name => 'FlashMode',
66
+ Condition => '$self->{Model} =~ /^QV-(3500EX|8000SX)/',
67
+ Writable => 'int16u',
68
+ PrintConv => {
69
+ 1 => 'Auto',
70
+ 2 => 'On',
71
+ 3 => 'Off',
72
+ 4 => 'Off', #4
73
+ 5 => 'Red-eye Reduction', #4
74
+ },
75
+ },
76
+ {
77
+ Name => 'FlashMode',
78
+ Writable => 'int16u',
79
+ PrintConv => {
80
+ 1 => 'Auto',
81
+ 2 => 'On',
82
+ 3 => 'Off',
83
+ 4 => 'Red-eye Reduction',
84
+ },
85
+ },
86
+ ],
87
+ 0x0005 => {
88
+ Name => 'FlashIntensity',
89
+ Writable => 'int16u',
90
+ PrintConv => {
91
+ 11 => 'Weak',
92
+ 12 => 'Low', #4
93
+ 13 => 'Normal',
94
+ 14 => 'High', #4
95
+ 15 => 'Strong',
96
+ },
97
+ },
98
+ 0x0006 => {
99
+ Name => 'ObjectDistance',
100
+ Writable => 'int32u',
101
+ ValueConv => '$val / 1000', #4
102
+ ValueConvInv => '$val * 1000',
103
+ PrintConv => '"$val m"',
104
+ PrintConvInv => '$val=~s/\s*m$//;$val',
105
+ },
106
+ 0x0007 => {
107
+ Name => 'WhiteBalance',
108
+ Writable => 'int16u',
109
+ PrintConv => {
110
+ 1 => 'Auto',
111
+ 2 => 'Tungsten',
112
+ 3 => 'Daylight',
113
+ 4 => 'Fluorescent',
114
+ 5 => 'Shade',
115
+ 129 => 'Manual',
116
+ },
117
+ },
118
+ # 0x0009 Bulb? (ref unknown)
119
+ 0x000a => {
120
+ Name => 'DigitalZoom',
121
+ Writable => 'int32u',
122
+ PrintHex => 1,
123
+ PrintConv => {
124
+ 0x10000 => 'Off',
125
+ 0x10001 => '2x',
126
+ 0x19999 => '1.6x', #4
127
+ 0x20000 => '2x', #4
128
+ 0x33333 => '3.2x', #4
129
+ 0x40000 => '4x', #4
130
+ },
131
+ },
132
+ 0x000b => {
133
+ Name => 'Sharpness',
134
+ Writable => 'int16u',
135
+ PrintConv => {
136
+ 0 => 'Normal',
137
+ 1 => 'Soft',
138
+ 2 => 'Hard',
139
+ 16 => 'Normal', #4
140
+ 17 => '+1', #4
141
+ 18 => '-1', #4
142
+ },
143
+ },
144
+ 0x000c => {
145
+ Name => 'Contrast',
146
+ Writable => 'int16u',
147
+ PrintConv => {
148
+ 0 => 'Normal',
149
+ 1 => 'Low',
150
+ 2 => 'High',
151
+ 16 => 'Normal', #4
152
+ 17 => '+1', #4
153
+ 18 => '-1', #4
154
+ },
155
+ },
156
+ 0x000d => {
157
+ Name => 'Saturation',
158
+ Writable => 'int16u',
159
+ PrintConv => {
160
+ 0 => 'Normal',
161
+ 1 => 'Low',
162
+ 2 => 'High',
163
+ 16 => 'Normal', #4
164
+ 17 => '+1', #4
165
+ 18 => '-1', #4
166
+ },
167
+ },
168
+ 0x0014 => {
169
+ Name => 'ISO',
170
+ Writable => 'int16u',
171
+ Priority => 0,
172
+ },
173
+ 0x0015 => { #JD (Similar to Type2 0x2001)
174
+ Name => 'FirmwareDate',
175
+ Writable => 'string',
176
+ Format => 'undef', # the 'string' contains nulls
177
+ Count => 18,
178
+ PrintConv => q{
179
+ $_ = $val;
180
+ if (/^(\d{2})(\d{2})\0\0(\d{2})(\d{2})\0\0(\d{2})(.{2})\0{2}$/) {
181
+ my $yr = $1 + ($1 < 70 ? 2000 : 1900);
182
+ my $sec = $6;
183
+ $val = "$yr:$2:$3 $4:$5";
184
+ $val .= ":$sec" if $sec=~/^\d{2}$/;
185
+ return $val;
186
+ }
187
+ tr/\0/./; s/\.+$//;
188
+ return "Unknown ($_)";
189
+ },
190
+ PrintConvInv => q{
191
+ $_ = $val;
192
+ if (/^(19|20)(\d{2}):(\d{2}):(\d{2}) (\d{2}):(\d{2})$/) {
193
+ return "$2$3\0\0$4$5\0\0$6\0\0\0\0";
194
+ } elsif (/^Unknown\s*\((.*)\)$/i) {
195
+ $_ = $1; tr/./\0/;
196
+ return $_;
197
+ } else {
198
+ return undef;
199
+ }
200
+ },
201
+ },
202
+ 0x0016 => { #4
203
+ Name => 'Enhancement',
204
+ Writable => 'int16u',
205
+ PrintConv => {
206
+ 1 => 'Off',
207
+ 2 => 'Red',
208
+ 3 => 'Green',
209
+ 4 => 'Blue',
210
+ 5 => 'Flesh Tones',
211
+ },
212
+ },
213
+ 0x0017 => { #4
214
+ Name => 'ColorFilter',
215
+ Writable => 'int16u',
216
+ PrintConv => {
217
+ 1 => 'Off',
218
+ 2 => 'Black & White',
219
+ 3 => 'Sepia',
220
+ 4 => 'Red',
221
+ 5 => 'Green',
222
+ 6 => 'Blue',
223
+ 7 => 'Yellow',
224
+ 8 => 'Pink',
225
+ 9 => 'Purple',
226
+ },
227
+ },
228
+ 0x0018 => { #4
229
+ Name => 'AFPoint',
230
+ Writable => 'int16u',
231
+ Notes => 'may not be valid for all models', #JD
232
+ PrintConv => {
233
+ 1 => 'Center',
234
+ 2 => 'Upper Left',
235
+ 3 => 'Upper Right',
236
+ 4 => 'Near Left/Right of Center',
237
+ 5 => 'Far Left/Right of Center',
238
+ 6 => 'Far Left/Right of Center/Bottom',
239
+ 7 => 'Top Near-Left',
240
+ 8 => 'Near Upper/Left',
241
+ 9 => 'Top Near-Right',
242
+ 10 => 'Top Left',
243
+ 11 => 'Top Center',
244
+ 12 => 'Top Right',
245
+ 13 => 'Center Left',
246
+ 14 => 'Center Right',
247
+ 15 => 'Bottom Left',
248
+ 16 => 'Bottom Center',
249
+ 17 => 'Bottom Right',
250
+ },
251
+ },
252
+ 0x0019 => { #4
253
+ Name => 'FlashIntensity',
254
+ Writable => 'int16u',
255
+ PrintConv => {
256
+ 1 => 'Normal',
257
+ 2 => 'Weak',
258
+ 3 => 'Strong',
259
+ },
260
+ },
261
+ 0x0e00 => {
262
+ Name => 'PrintIM',
263
+ Description => 'Print Image Matching',
264
+ # crazy I know, but the offset for this value is entry-based
265
+ # (QV-2100, QV-2900UX, QV-3500EX and QV-4000) even though the
266
+ # offsets for other values isn't
267
+ EntryBased => 1,
268
+ SubDirectory => {
269
+ TagTable => 'Image::ExifTool::PrintIM::Main',
270
+ },
271
+ },
272
+ );
273
+
274
+ # ref 2:
275
+ %Image::ExifTool::Casio::Type2 = (
276
+ WRITE_PROC => \&Image::ExifTool::Exif::WriteExif,
277
+ CHECK_PROC => \&Image::ExifTool::Exif::CheckExif,
278
+ WRITABLE => 1,
279
+ GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' },
280
+ 0x0002 => {
281
+ Name => 'PreviewImageSize',
282
+ Groups => { 2 => 'Image' },
283
+ Writable => 'int16u',
284
+ Count => 2,
285
+ PrintConv => '$val =~ tr/ /x/; $val',
286
+ PrintConvInv => '$val =~ tr/x/ /; $val',
287
+ },
288
+ 0x0003 => {
289
+ Name => 'PreviewImageLength',
290
+ Groups => { 2 => 'Image' },
291
+ OffsetPair => 0x0004, # point to associated offset
292
+ DataTag => 'PreviewImage',
293
+ Writable => 'int32u',
294
+ Protected => 2,
295
+ },
296
+ 0x0004 => {
297
+ Name => 'PreviewImageStart',
298
+ Groups => { 2 => 'Image' },
299
+ Flags => 'IsOffset',
300
+ OffsetPair => 0x0003, # point to associated byte count
301
+ DataTag => 'PreviewImage',
302
+ Writable => 'int32u',
303
+ Protected => 2,
304
+ },
305
+ 0x0008 => {
306
+ Name => 'QualityMode',
307
+ Writable => 'int16u',
308
+ PrintConv => {
309
+ 0 => 'Economy',
310
+ 1 => 'Normal',
311
+ 2 => 'Fine',
312
+ },
313
+ },
314
+ 0x0009 => {
315
+ Name => 'CasioImageSize',
316
+ Groups => { 2 => 'Image' },
317
+ Writable => 'int16u',
318
+ PrintConv => {
319
+ 0 => '640x480',
320
+ 4 => '1600x1200',
321
+ 5 => '2048x1536',
322
+ 20 => '2288x1712',
323
+ 21 => '2592x1944',
324
+ 22 => '2304x1728',
325
+ 36 => '3008x2008',
326
+ },
327
+ },
328
+ 0x000d => {
329
+ Name => 'FocusMode',
330
+ Writable => 'int16u',
331
+ PrintConv => {
332
+ 0 => 'Normal',
333
+ 1 => 'Macro',
334
+ },
335
+ },
336
+ 0x0014 => {
337
+ Name => 'ISO',
338
+ Writable => 'int16u',
339
+ Priority => 0,
340
+ PrintConv => {
341
+ 3 => 50,
342
+ 4 => 64,
343
+ 6 => 100,
344
+ 9 => 200,
345
+ },
346
+ },
347
+ 0x0019 => {
348
+ Name => 'WhiteBalance',
349
+ Writable => 'int16u',
350
+ PrintConv => {
351
+ 0 => 'Auto',
352
+ 1 => 'Daylight',
353
+ 2 => 'Shade',
354
+ 3 => 'Tungsten',
355
+ 4 => 'Fluorescent',
356
+ 5 => 'Manual',
357
+ },
358
+ },
359
+ 0x001d => {
360
+ Name => 'FocalLength',
361
+ Writable => 'rational64u',
362
+ PrintConv => 'sprintf("%.1f mm",$val)',
363
+ PrintConvInv => '$val=~s/\s*mm$//;$val',
364
+ },
365
+ 0x001f => {
366
+ Name => 'Saturation',
367
+ Writable => 'int16u',
368
+ PrintConv => {
369
+ 0 => 'Low',
370
+ 1 => 'Normal',
371
+ 2 => 'High',
372
+ },
373
+ },
374
+ 0x0020 => {
375
+ Name => 'Contrast',
376
+ Writable => 'int16u',
377
+ PrintConv => {
378
+ 0 => 'Low',
379
+ 1 => 'Normal',
380
+ 2 => 'High',
381
+ },
382
+ },
383
+ 0x0021 => {
384
+ Name => 'Sharpness',
385
+ Writable => 'int16u',
386
+ PrintConv => {
387
+ 0 => 'Soft',
388
+ 1 => 'Normal',
389
+ 2 => 'Hard',
390
+ },
391
+ },
392
+ 0x0e00 => {
393
+ Name => 'PrintIM',
394
+ Description => 'Print Image Matching',
395
+ Writable => 0,
396
+ SubDirectory => {
397
+ TagTable => 'Image::ExifTool::PrintIM::Main',
398
+ },
399
+ },
400
+ 0x2000 => {
401
+ # this image data is also referenced by tags 3 and 4
402
+ # (nasty that they double-reference the image!)
403
+ %Image::ExifTool::previewImageTagInfo,
404
+ },
405
+ 0x2001 => { #PH
406
+ # I downloaded images from 12 different EX-Z50 cameras, and they showed
407
+ # only 3 distinct dates here (2004:08:31 18:55, 2004:09:13 14:14, and
408
+ # 2004:11:26 17:07), so I'm guessing this is a firmware version date - PH
409
+ Name => 'FirmwareDate',
410
+ Writable => 'string',
411
+ Format => 'undef', # the 'string' contains nulls
412
+ Count => 18,
413
+ PrintConv => q{
414
+ $_ = $val;
415
+ if (/^(\d{2})(\d{2})\0\0(\d{2})(\d{2})\0\0(\d{2})\0{4}$/) {
416
+ my $yr = $1 + ($1 < 70 ? 2000 : 1900);
417
+ return "$yr:$2:$3 $4:$5";
418
+ }
419
+ tr/\0/./; s/\.+$//;
420
+ return "Unknown ($_)";
421
+ },
422
+ PrintConvInv => q{
423
+ $_ = $val;
424
+ if (/^(19|20)(\d{2}):(\d{2}):(\d{2}) (\d{2}):(\d{2})$/) {
425
+ return "$2$3\0\0$4$5\0\0$6\0\0\0\0";
426
+ } elsif (/^Unknown\s*\((.*)\)$/i) {
427
+ $_ = $1; tr/./\0/;
428
+ return $_;
429
+ } else {
430
+ return undef;
431
+ }
432
+ },
433
+ },
434
+ 0x2011 => {
435
+ Name => 'WhiteBalanceBias',
436
+ Writable => 'int16u',
437
+ Count => 2,
438
+ },
439
+ 0x2012 => {
440
+ Name => 'WhiteBalance',
441
+ Writable => 'int16u',
442
+ PrintConv => {
443
+ 0 => 'Manual',
444
+ 1 => 'Daylight', #3
445
+ 2 => 'Cloudy', #PH (EX-ZR20, NC)
446
+ 3 => 'Shade', #3
447
+ 4 => 'Flash?',
448
+ 6 => 'Fluorescent', #3
449
+ 9 => 'Tungsten?', #PH (EX-Z77)
450
+ 10 => 'Tungsten', #3
451
+ 12 => 'Flash',
452
+ },
453
+ },
454
+ 0x2021 => { #JD (guess)
455
+ Name => 'AFPointPosition',
456
+ Writable => 'int16u',
457
+ Count => 4,
458
+ PrintConv => q{
459
+ my @v = split ' ', $val;
460
+ return 'n/a' if $v[0] == 65535 or not $v[1] or not $v[3];
461
+ sprintf "%.2g %.2g", $v[0]/$v[1], $v[2]/$v[3];
462
+ },
463
+ },
464
+ 0x2022 => {
465
+ Name => 'ObjectDistance',
466
+ Writable => 'int32u',
467
+ ValueConv => '$val >= 0x20000000 ? "inf" : $val / 1000',
468
+ ValueConvInv => '$val eq "inf" ? 0x20000000 : $val * 1000',
469
+ PrintConv => '$val eq "inf" ? $val : "$val m"',
470
+ PrintConvInv => '$val=~s/\s*m$//;$val',
471
+ },
472
+ # 0x2023 looks interesting (values 0,1,2,3,5 in samples) - PH
473
+ # - 1 for makeup mode shots (portrait?) (EX-Z450)
474
+ 0x2034 => {
475
+ Name => 'FlashDistance',
476
+ Writable => 'int16u',
477
+ },
478
+ # 0x203e - normally 62000, but 62001 for anti-shake mode - PH
479
+ 0x2076 => { #PH (EX-Z450)
480
+ # ("Enhancement" was taken already, so call this "SpecialEffect" for lack of a better name)
481
+ Name => 'SpecialEffectMode',
482
+ Writable => 'int8u',
483
+ Count => 3,
484
+ PrintConv => {
485
+ '0 0 0' => 'Off',
486
+ '1 0 0' => 'Makeup',
487
+ '2 0 0' => 'Mist Removal',
488
+ '3 0 0' => 'Vivid Landscape',
489
+ # have also seen '1 1 1', '2 2 4', '4 3 3', '4 4 4'
490
+ # '0 0 14' and '0 0 42' - premium auto night shot (EX-Z2300)
491
+ # and '0 0 2' for Art HDR
492
+ },
493
+ },
494
+ 0x2089 => [ #PH
495
+ {
496
+ Name => 'FaceInfo1',
497
+ Condition => '$$valPt =~ /^(\0\0|.\x02\x80\x01\xe0)/s', # (EX-H5)
498
+ SubDirectory => {
499
+ TagTable => 'Image::ExifTool::Casio::FaceInfo1',
500
+ ByteOrder => 'BigEndian',
501
+ },
502
+ },{
503
+ Name => 'FaceInfo2',
504
+ Condition => '$$valPt =~ /^\x02\x01/', # (EX-H20G,EX-ZR100)
505
+ SubDirectory => {
506
+ TagTable => 'Image::ExifTool::Casio::FaceInfo2',
507
+ ByteOrder => 'LittleEndian',
508
+ },
509
+ },{
510
+ Name => 'FaceInfoUnknown',
511
+ Unknown => 1,
512
+ },
513
+ ],
514
+ # 0x208a - also some sort of face detection information - PH
515
+ 0x211c => { #PH
516
+ Name => 'FacesDetected',
517
+ Format => 'int8u',
518
+ },
519
+ 0x3000 => {
520
+ Name => 'RecordMode',
521
+ Writable => 'int16u',
522
+ PrintConv => {
523
+ 2 => 'Program AE', #3
524
+ 3 => 'Shutter Priority', #3
525
+ 4 => 'Aperture Priority', #3
526
+ 5 => 'Manual', #3
527
+ 6 => 'Best Shot', #3
528
+ 17 => 'Movie', #PH (UHQ?)
529
+ 19 => 'Movie (19)', #PH (HQ?, EX-P505)
530
+ 20 => 'YouTube Movie', #PH
531
+ '2 0' => 'Program AE', #PH (NC)
532
+ '3 0' => 'Shutter Priority', #PH (NC)
533
+ '4 0' => 'Aperture Priority', #PH (NC)
534
+ '5 0' => 'Manual', #PH (NC)
535
+ '6 0' => 'Best Shot', #PH (NC)
536
+ },
537
+ },
538
+ 0x3001 => { #3
539
+ Name => 'ReleaseMode',
540
+ Writable => 'int16u',
541
+ PrintConv => {
542
+ 1 => 'Normal',
543
+ 3 => 'AE Bracketing',
544
+ 11 => 'WB Bracketing',
545
+ 13 => 'Contrast Bracketing', #(not sure about translation - PH)
546
+ 19 => 'High Speed Burst', #PH (EX-FH25, 40fps)
547
+ # have also seen: 2, 7(common), 14, 18 - PH
548
+ },
549
+ },
550
+ 0x3002 => {
551
+ Name => 'Quality',
552
+ Writable => 'int16u',
553
+ PrintConv => {
554
+ 1 => 'Economy',
555
+ 2 => 'Normal',
556
+ 3 => 'Fine',
557
+ },
558
+ },
559
+ 0x3003 => {
560
+ Name => 'FocusMode',
561
+ Writable => 'int16u',
562
+ PrintConv => {
563
+ 0 => 'Manual', #(guess at translation)
564
+ 1 => 'Focus Lock', #(guess at translation)
565
+ 2 => 'Macro', #3
566
+ 3 => 'Single-Area Auto Focus',
567
+ 5 => 'Infinity', #PH
568
+ 6 => 'Multi-Area Auto Focus',
569
+ 8 => 'Super Macro', #PH (EX-Z2300)
570
+ },
571
+ },
572
+ 0x3006 => {
573
+ Name => 'HometownCity',
574
+ Writable => 'string',
575
+ },
576
+ # unfortunately the BestShotMode numbers are model-dependent - PH
577
+ #http://search.casio-intl.com/search?q=BEST+SHOT+sets+up+the+camera+CASIO+EX+ZR100+BEST+SHOT&btnG=Search&output=xml_no_dtd&oe=UTF-8&ie=UTF-8&site=casio-intl_com&client=search_casio-intl_com&proxystylesheet=search_casio-intl_com
578
+ # NOTE: BestShotMode is not used unless RecordMode is "Best Shot"
579
+ 0x3007 => [{
580
+ Name => 'BestShotMode',
581
+ Writable => 'int16u',
582
+ Condition => '$$self{Model} eq "EX-FC100"',
583
+ Notes => 'EX-FC100',
584
+ PrintConvColumns => 2,
585
+ PrintConv => {
586
+ 0 => 'Off',
587
+ 1 => 'Auto',
588
+ 2 => 'Portrait',
589
+ 3 => 'Scenery',
590
+ 4 => 'Portrait with Scenery',
591
+ 5 => 'Children',
592
+ 6 => 'Sports',
593
+ 7 => 'Pet',
594
+ 8 => 'Flower',
595
+ 9 => 'Natural Green',
596
+ 10 => 'Autumn Leaves',
597
+ 11 => 'Sundown',
598
+ 12 => 'High Speed Night Scene',
599
+ 13 => 'Night Scene Portrait',
600
+ 14 => 'Fireworks',
601
+ 15 => 'High Speed Anti Shake',
602
+ 16 => 'Multi-motion Image',
603
+ 17 => 'High Speed Best Selection',
604
+ 18 => 'Move Out CS',
605
+ 19 => 'Move In CS',
606
+ 20 => 'Pre-record Movie',
607
+ 21 => 'For YouTube',
608
+ },
609
+ },{
610
+ Name => 'BestShotMode',
611
+ Writable => 'int16u',
612
+ Condition => '$$self{Model} eq "EX-FC150"',
613
+ Notes => 'EX-FC150',
614
+ PrintConvColumns => 2,
615
+ PrintConv => {
616
+ 0 => 'Off',
617
+ 1 => 'Auto',
618
+ 2 => 'Expression CS',
619
+ 3 => 'Baby CS',
620
+ 4 => 'Child CS',
621
+ 5 => 'Pet CS',
622
+ 6 => 'Sports CS',
623
+ 7 => 'Child High Speed Movie',
624
+ 8 => 'Pet High Speed Movie',
625
+ 9 => 'Sports High Speed Movie',
626
+ 10 => 'Lag Correction',
627
+ 11 => 'High Speed Lighting',
628
+ 12 => 'High Speed Night Scene',
629
+ 13 => 'High Speed Night Scene and Portrait',
630
+ 14 => 'High Speed Anti Shake',
631
+ 15 => 'High Speed Best Selection',
632
+ 16 => 'Portrait',
633
+ 17 => 'Scenery',
634
+ 18 => 'Portrait With Scenery',
635
+ 19 => 'Flower',
636
+ 20 => 'Natural Green',
637
+ 21 => 'Autumn Leaves',
638
+ 22 => 'Sundown',
639
+ 23 => 'Fireworks',
640
+ 24 => 'Multi-motion Image',
641
+ 25 => 'Move Out CS',
642
+ 26 => 'Move In CS',
643
+ 27 => 'Pre-record Movie',
644
+ 28 => 'For YouTube',
645
+ },
646
+ },{
647
+ Name => 'BestShotMode',
648
+ Writable => 'int16u',
649
+ Condition => '$$self{Model} eq "EX-FC200S"',
650
+ Notes => 'EX-FC200S',
651
+ PrintConvColumns => 2,
652
+ PrintConv => {
653
+ 0 => 'Off',
654
+ 1 => 'Slow Motion Swing (behind)',
655
+ 2 => 'Slow Motion Swing (front)',
656
+ 3 => 'Self Slow Motion (behind)',
657
+ 4 => 'Self Slow Motion (front)',
658
+ 5 => 'Swing Burst',
659
+ 6 => 'HDR',
660
+ 7 => 'HDR Art',
661
+ 8 => 'High Speed Night Scene',
662
+ 9 => 'High Speed Night Scene and Portrait',
663
+ 10 => 'High Speed Anti Shake',
664
+ 11 => 'Multi SR Zoom',
665
+ 12 => 'Blurred Background',
666
+ 13 => 'Wide Shot',
667
+ 14 => 'Slide Panorama',
668
+ 15 => 'High Speed Best Selection',
669
+ 16 => 'Lag Correction',
670
+ 17 => 'High Speed CS',
671
+ 18 => 'Child CS',
672
+ 19 => 'Pet CS',
673
+ 20 => 'Sports CS',
674
+ 21 => 'Child High Speed Movie',
675
+ 22 => 'Pet High Speed Movie',
676
+ 23 => 'Sports High Speed Movie',
677
+ 24 => 'Portrait',
678
+ 25 => 'Scenery',
679
+ 26 => 'Portrait with Scenery',
680
+ 27 => 'Children',
681
+ 28 => 'Sports',
682
+ 29 => 'Candlelight Portrait',
683
+ 30 => 'Party',
684
+ 31 => 'Pet',
685
+ 32 => 'Flower',
686
+ 33 => 'Natural Green',
687
+ 34 => 'Autumn Leaves',
688
+ 35 => 'Soft Flowing Water',
689
+ 36 => 'Splashing Water',
690
+ 37 => 'Sundown',
691
+ 38 => 'Fireworks',
692
+ 39 => 'Food',
693
+ 40 => 'Text',
694
+ 41 => 'Collection',
695
+ 42 => 'Auction',
696
+ 43 => 'Pre-record Movie',
697
+ 44 => 'For YouTube',
698
+ },
699
+ },{
700
+ Name => 'BestShotMode',
701
+ Writable => 'int16u',
702
+ Condition => '$$self{Model} eq "EX-FH100"',
703
+ Notes => 'EX-FH100',
704
+ PrintConvColumns => 2,
705
+ PrintConv => {
706
+ 0 => 'Off',
707
+ 1 => 'Expression CS',
708
+ 2 => 'Baby CS',
709
+ 3 => 'Child CS',
710
+ 4 => 'Pet CS',
711
+ 5 => 'Sports CS',
712
+ 6 => 'Child High Speed Movie',
713
+ 7 => 'Pet High Speed Movie',
714
+ 8 => 'Sports High Speed Movie',
715
+ 9 => 'Lag Correction',
716
+ 10 => 'High Speed Lighting',
717
+ 11 => 'High Speed Night Scene',
718
+ 12 => 'High Speed Night Scene and Portrait',
719
+ 13 => 'High Speed Anti Shake',
720
+ 14 => 'High Speed Best Selection',
721
+ 15 => 'Portrait',
722
+ 16 => 'Scenery',
723
+ 17 => 'Portrait With Scenery',
724
+ 18 => 'Flower',
725
+ 19 => 'Natural Green',
726
+ 20 => 'Autumn Leaves',
727
+ 21 => 'Sundown',
728
+ 22 => 'Fireworks',
729
+ 23 => 'Multi-motion Image',
730
+ 24 => 'Move Out CS',
731
+ 25 => 'Move In CS',
732
+ 26 => 'Pre-record Movie',
733
+ 27 => 'For YouTube',
734
+ },
735
+ },{
736
+ Name => 'BestShotMode',
737
+ Writable => 'int16u',
738
+ Condition => '$$self{Model} eq "EX-G1"',
739
+ Notes => 'EX-G1',
740
+ PrintConvColumns => 3,
741
+ PrintConv => {
742
+ 0 => 'Off',
743
+ 1 => 'Auto',
744
+ 2 => 'Auto Best Shot',
745
+ 3 => 'Dynamic Photo',
746
+ 4 => 'Interval Snapshot',
747
+ 5 => 'Interval Movie',
748
+ 6 => 'Portrait',
749
+ 7 => 'Scenery',
750
+ 8 => 'Portrait with Scenery',
751
+ 9 => 'Underwater',
752
+ 10 => 'Beach',
753
+ 11 => 'Snow',
754
+ 12 => 'Children',
755
+ 13 => 'Sports',
756
+ 14 => 'Pet',
757
+ 15 => 'Flower',
758
+ 16 => 'Sundown',
759
+ 17 => 'Night Scene',
760
+ 18 => 'Night Scene Portrait',
761
+ 19 => 'Fireworks',
762
+ 20 => 'Food',
763
+ 21 => 'For eBay',
764
+ 22 => 'Multi-motion Image',
765
+ 23 => 'Pre-record Movie',
766
+ 24 => 'For YouTube',
767
+ 25 => 'Voice Recording',
768
+ },
769
+ },{
770
+ Name => 'BestShotMode',
771
+ Writable => 'int16u',
772
+ Condition => '$$self{Model} eq "EX-S10"',
773
+ Notes => 'EX-S10',
774
+ PrintConvColumns => 3,
775
+ PrintConv => {
776
+ 0 => 'Off',
777
+ 1 => 'Auto',
778
+ 2 => 'Portrait',
779
+ 3 => 'Scenery',
780
+ 4 => 'Portrait with Scenery',
781
+ 5 => 'Self-portrait (1 person)',
782
+ 6 => 'Self-portrait (2 people)',
783
+ 7 => 'Children',
784
+ 8 => 'Sports',
785
+ 9 => 'Candlelight Portrait',
786
+ 10 => 'Party',
787
+ 11 => 'Pet',
788
+ 12 => 'Flower',
789
+ 13 => 'Natural Green',
790
+ 14 => 'Autumn Leaves',
791
+ 15 => 'Soft Flowing Water',
792
+ 16 => 'Splashing Water',
793
+ 17 => 'Sundown',
794
+ 18 => 'Night Scene',
795
+ 19 => 'Night Scene Portrait',
796
+ 20 => 'Fireworks',
797
+ 21 => 'Food',
798
+ 22 => 'Text',
799
+ 23 => 'Collection',
800
+ 24 => 'Auction',
801
+ 25 => 'Backlight',
802
+ 26 => 'Anti Shake',
803
+ 27 => 'High Sensitivity',
804
+ 28 => 'Underwater',
805
+ 29 => 'Monochrome',
806
+ 30 => 'Retro',
807
+ 31 => 'Business Cards',
808
+ 32 => 'White Board',
809
+ 33 => 'Silent',
810
+ 34 => 'Pre-record Movie',
811
+ 35 => 'For YouTube',
812
+ 36 => 'Voice Recording',
813
+ },
814
+ },{
815
+ Name => 'BestShotMode',
816
+ Writable => 'int16u',
817
+ Condition => '$$self{Model} eq "EX-S880"',
818
+ Notes => 'EX-S880',
819
+ PrintConvColumns => 3,
820
+ PrintConv => {
821
+ 0 => 'Off',
822
+ 1 => 'Auto',
823
+ 2 => 'Portrait',
824
+ 3 => 'Scenery',
825
+ 4 => 'Portrait with Scenery',
826
+ 5 => 'Children',
827
+ 6 => 'Sports',
828
+ 7 => 'Candlelight Portrait',
829
+ 8 => 'Party',
830
+ 9 => 'Pet',
831
+ 10 => 'Flower',
832
+ 11 => 'Natural Green',
833
+ 12 => 'Autumn Leaves',
834
+ 13 => 'Soft Flowing Water', # (wrong in documentation)
835
+ 14 => 'Splashing Water',
836
+ 15 => 'Sundown',
837
+ 16 => 'Night Scene',
838
+ 17 => 'Night Scene Portrait',
839
+ 18 => 'Fireworks',
840
+ 19 => 'Food',
841
+ 20 => 'Text',
842
+ 21 => 'Collection',
843
+ 22 => 'Auction',
844
+ 23 => 'Backlight',
845
+ 24 => 'Anti Shake',
846
+ 25 => 'High Sensitivity',
847
+ 26 => 'Monochrome',
848
+ 27 => 'Retro',
849
+ 28 => 'Twilight',
850
+ 29 => 'Layout (2 images)',
851
+ 30 => 'Layout (3 images)',
852
+ 31 => 'Auto Framing',
853
+ 32 => 'Old Photo',
854
+ 33 => 'Business Cards',
855
+ 34 => 'White Board',
856
+ 35 => 'Silent',
857
+ 36 => 'Short Movie',
858
+ 37 => 'Past Movie',
859
+ 38 => 'For YouTube',
860
+ 39 => 'Voice Recording',
861
+ },
862
+ },{
863
+ Name => 'BestShotMode',
864
+ Writable => 'int16u',
865
+ Condition => '$$self{Model} eq "EX-Z16"',
866
+ Notes => 'EX-Z16',
867
+ PrintConvColumns => 3,
868
+ PrintConv => {
869
+ 0 => 'Off',
870
+ 1 => 'Auto',
871
+ 2 => 'Portrait',
872
+ 3 => 'Scenery',
873
+ 4 => 'Portrait with Scenery',
874
+ 5 => 'Children',
875
+ 6 => 'Sports',
876
+ 7 => 'Candlelight Portrait',
877
+ 8 => 'Party',
878
+ 9 => 'Pet',
879
+ 10 => 'Flower',
880
+ 11 => 'Soft Flowing Water',
881
+ 12 => 'Sundown',
882
+ 13 => 'Night Scene',
883
+ 14 => 'Night Scene Portrait',
884
+ 15 => 'Fireworks',
885
+ 16 => 'Food',
886
+ 17 => 'Text',
887
+ 18 => 'For eBay',
888
+ 19 => 'Backlight',
889
+ 20 => 'Anti Shake',
890
+ 21 => 'High Sensitivity',
891
+ 22 => 'For YouTube',
892
+ 23 => 'Voice Recording',
893
+ },
894
+ },{
895
+ Name => 'BestShotMode',
896
+ Writable => 'int16u',
897
+ Condition => '$$self{Model} eq "EX-Z9"',
898
+ Notes => 'EX-Z9',
899
+ PrintConvColumns => 3,
900
+ PrintConv => {
901
+ 0 => 'Off',
902
+ 1 => 'Auto',
903
+ 2 => 'Movie',
904
+ 3 => 'Portrait',
905
+ 4 => 'Scenery',
906
+ 5 => 'Children',
907
+ 6 => 'Sports',
908
+ 7 => 'Candlelight Portrait',
909
+ 8 => 'Party',
910
+ 9 => 'Pet',
911
+ 10 => 'Flower',
912
+ 11 => 'Soft Flowing Water',
913
+ 12 => 'Sundown',
914
+ 13 => 'Night Scene',
915
+ 14 => 'Night Scene Portrait',
916
+ 15 => 'Fireworks',
917
+ 16 => 'Food',
918
+ 17 => 'Text',
919
+ 18 => 'Auction',
920
+ 19 => 'Backlight',
921
+ 20 => 'Anti Shake',
922
+ 21 => 'High Sensitivity',
923
+ 22 => 'For YouTube',
924
+ 23 => 'Voice Recording',
925
+ },
926
+ },{
927
+ Name => 'BestShotMode',
928
+ Writable => 'int16u',
929
+ Condition => '$$self{Model} eq "EX-Z80"',
930
+ Notes => 'EX-Z80',
931
+ PrintConvColumns => 3,
932
+ PrintConv => {
933
+ 0 => 'Off',
934
+ 1 => 'Auto',
935
+ 2 => 'Portrait',
936
+ 3 => 'Scenery',
937
+ 4 => 'Portrait with Scenery',
938
+ 5 => 'Pet',
939
+ 6 => 'Self-portrait (1 person)',
940
+ 7 => 'Self-portrait (2 people)',
941
+ 8 => 'Flower',
942
+ 9 => 'Food',
943
+ 10 => 'Fashion Accessories',
944
+ 11 => 'Magazine',
945
+ 12 => 'Monochrome',
946
+ 13 => 'Retro',
947
+ 14 => 'Cross Filter',
948
+ 15 => 'Pastel',
949
+ 16 => 'Night Scene',
950
+ 17 => 'Night Scene Portrait',
951
+ 18 => 'Party',
952
+ 19 => 'Sports',
953
+ 20 => 'Children',
954
+ 21 => 'Sundown',
955
+ 22 => 'Fireworks',
956
+ 23 => 'Underwater',
957
+ 24 => 'Backlight',
958
+ 25 => 'High Sensitivity',
959
+ 26 => 'Auction',
960
+ 27 => 'White Board',
961
+ 28 => 'Pre-record Movie',
962
+ 29 => 'For YouTube',
963
+ 30 => 'Voice Recording',
964
+ },
965
+ },{
966
+ Name => 'BestShotMode',
967
+ Writable => 'int16u',
968
+ Condition => '$$self{Model} =~ /^EX-Z(100|200)$/',
969
+ Notes => 'EX-Z100 and EX-Z200',
970
+ PrintConvColumns => 3,
971
+ PrintConv => {
972
+ 0 => 'Off',
973
+ 1 => 'Auto',
974
+ 2 => 'Auto Best Shot',
975
+ 3 => 'Portrait',
976
+ 4 => 'Scenery',
977
+ 5 => 'Portrait with Scenery',
978
+ 6 => 'Self-portrait (1 person)',
979
+ 7 => 'Self-portrait (2 people)',
980
+ 8 => 'Children',
981
+ 9 => 'Sports',
982
+ 10 => 'Candlelight Portrait',
983
+ 11 => 'Party',
984
+ 12 => 'Pet',
985
+ 13 => 'Flower',
986
+ 14 => 'Natural Green',
987
+ 15 => 'Autumn Leaves',
988
+ 16 => 'Soft Flowing Water',
989
+ 17 => 'Splashing Water',
990
+ 18 => 'Sundown',
991
+ 19 => 'Night Scene',
992
+ 20 => 'Night Scene Portrait',
993
+ 21 => 'Fireworks',
994
+ 22 => 'Food',
995
+ 23 => 'Text',
996
+ 24 => 'Collection',
997
+ 25 => 'Auction',
998
+ 26 => 'Backlight',
999
+ 27 => 'Anti Shake',
1000
+ 28 => 'High Sensitivity',
1001
+ 29 => 'Underwater',
1002
+ 30 => 'Monochrome',
1003
+ 31 => 'Retro',
1004
+ 32 => 'Twilight',
1005
+ 33 => 'ID Photo',
1006
+ 34 => 'Business Cards',
1007
+ 35 => 'White Board',
1008
+ 36 => 'Silent',
1009
+ 37 => 'Pre-record Movie',
1010
+ 38 => 'For YouTube',
1011
+ 39 => 'Voice Recording',
1012
+ },
1013
+ },{
1014
+ Name => 'BestShotMode',
1015
+ Writable => 'int16u',
1016
+ # (Movies have different BestShot numbers for this camera)
1017
+ Condition => '$$self{Model} eq "EX-Z750" and $$self{FILE_TYPE} eq "JPEG"',
1018
+ Notes => 'EX-Z750 JPEG images',
1019
+ PrintConvColumns => 3,
1020
+ PrintConv => {
1021
+ 0 => 'Off',
1022
+ 1 => 'Portrait',
1023
+ 2 => 'Scenery',
1024
+ 3 => 'Portrait with Scenery',
1025
+ 4 => 'Children',
1026
+ 5 => 'Sports',
1027
+ 6 => 'Candlelight Portrait',
1028
+ 7 => 'Party',
1029
+ 8 => 'Pet',
1030
+ 9 => 'Flower',
1031
+ 10 => 'Natural Green',
1032
+ 11 => 'Soft Flowing Water',
1033
+ 12 => 'Splashing Water',
1034
+ 13 => 'Sundown',
1035
+ 14 => 'Night Scene',
1036
+ 15 => 'Night Scene Portrait',
1037
+ 16 => 'Fireworks',
1038
+ 17 => 'Food',
1039
+ 18 => 'Text',
1040
+ 19 => 'Collection',
1041
+ 20 => 'Backlight',
1042
+ 21 => 'Anti Shake',
1043
+ 22 => 'Pastel',
1044
+ 23 => 'Illustration',
1045
+ 24 => 'Cross Filter',
1046
+ 25 => 'Monochrome',
1047
+ 26 => 'Retro',
1048
+ 27 => 'Twilight',
1049
+ 28 => 'Old Photo',
1050
+ 29 => 'ID Photo',
1051
+ 30 => 'Business Cards',
1052
+ 31 => 'White Board',
1053
+ },
1054
+ },{
1055
+ Name => 'BestShotMode',
1056
+ Writable => 'int16u',
1057
+ # (Movies have different BestShot numbers for this camera)
1058
+ Condition => '$$self{Model} eq "EX-Z750" and $$self{FILE_TYPE} =~ /^(MOV|AVI)$/',
1059
+ Notes => 'EX-Z750 movies',
1060
+ PrintConvColumns => 3,
1061
+ PrintConv => {
1062
+ 0 => 'Off',
1063
+ 1 => 'Portrait',
1064
+ 2 => 'Scenery',
1065
+ 3 => 'Night Scene',
1066
+ 4 => 'Fireworks',
1067
+ 5 => 'Backlight',
1068
+ 6 => 'Silent',
1069
+ },
1070
+ },{
1071
+ Name => 'BestShotMode',
1072
+ Writable => 'int16u',
1073
+ # (Movies have different BestShot numbers for this camera)
1074
+ Condition => '$$self{Model} eq "EX-Z850" and $$self{FILE_TYPE} eq "JPEG"',
1075
+ Notes => 'EX-Z850 JPEG images',
1076
+ PrintConvColumns => 3,
1077
+ PrintConv => {
1078
+ 0 => 'Off',
1079
+ 1 => 'Portrait',
1080
+ 2 => 'Scenery',
1081
+ 3 => 'Portrait with Scenery',
1082
+ 4 => 'Children',
1083
+ 5 => 'Sports',
1084
+ 6 => 'Candlelight Portrait',
1085
+ 7 => 'Party',
1086
+ 8 => 'Pet',
1087
+ 9 => 'Flower',
1088
+ 10 => 'Natural Green',
1089
+ 11 => 'Autumn Leaves',
1090
+ 12 => 'Soft Flowing Water',
1091
+ 13 => 'Splashing Water',
1092
+ 14 => 'Sundown',
1093
+ 15 => 'Night Scene',
1094
+ 16 => 'Night Scene Portrait',
1095
+ 17 => 'Fireworks',
1096
+ 18 => 'Food',
1097
+ 19 => 'Text',
1098
+ 20 => 'Collection',
1099
+ 21 => 'For eBay',
1100
+ 22 => 'Backlight',
1101
+ 23 => 'Anti Shake',
1102
+ 24 => 'High Sensitivity',
1103
+ 25 => 'Pastel',
1104
+ 26 => 'Illustration',
1105
+ 27 => 'Cross Filter',
1106
+ 28 => 'Monochrome',
1107
+ 29 => 'Retro',
1108
+ 30 => 'Twilight',
1109
+ 31 => 'ID Photo',
1110
+ 32 => 'Old Photo',
1111
+ 33 => 'Business Cards',
1112
+ 34 => 'White Board',
1113
+ },
1114
+ },{
1115
+ Name => 'BestShotMode',
1116
+ Writable => 'int16u',
1117
+ # (Movies have different BestShot numbers for this camera)
1118
+ Condition => '$$self{Model} eq "EX-Z850" and $$self{FILE_TYPE} =~ /^(MOV|AVI)$/',
1119
+ Notes => 'EX-Z850 movies',
1120
+ PrintConvColumns => 3,
1121
+ PrintConv => {
1122
+ 0 => 'Off',
1123
+ 1 => 'Portrait',
1124
+ 2 => 'Scenery',
1125
+ 3 => 'Night Scene',
1126
+ 4 => 'Fireworks',
1127
+ 5 => 'Backlight',
1128
+ 6 => 'High Sensitivity',
1129
+ 7 => 'Silent',
1130
+ 8 => 'Short Movie',
1131
+ 9 => 'Past Movie',
1132
+ },
1133
+ },{
1134
+ Name => 'BestShotMode',
1135
+ Writable => 'int16u',
1136
+ # (Movies have different BestShot numbers for this camera)
1137
+ Condition => '$$self{Model} eq "EX-Z1050"',
1138
+ Notes => 'EX-Z1050',
1139
+ PrintConvColumns => 3,
1140
+ PrintConv => {
1141
+ 0 => 'Off',
1142
+ 1 => 'Auto',
1143
+ 2 => 'Movie',
1144
+ 3 => 'Portrait',
1145
+ 4 => 'Scenery',
1146
+ 5 => 'Portrait with Scenery',
1147
+ 6 => 'Children',
1148
+ 7 => 'Sports',
1149
+ 8 => 'Candlelight Portrait',
1150
+ 9 => 'Party',
1151
+ 10 => 'Pet',
1152
+ 11 => 'Flower',
1153
+ 12 => 'Natural Green',
1154
+ 13 => 'Autumn Leaves',
1155
+ 14 => 'Soft Flowing Water',
1156
+ 15 => 'Splashing Water',
1157
+ 16 => 'Sundown',
1158
+ 17 => 'Night Scene',
1159
+ 18 => 'Night Scene Portrait',
1160
+ 19 => 'Fireworks',
1161
+ 20 => 'Food',
1162
+ 21 => 'Text',
1163
+ 22 => 'Collection',
1164
+ 23 => 'For eBay',
1165
+ 24 => 'Backlight',
1166
+ 25 => 'Anti Shake',
1167
+ 26 => 'High Sensitivity',
1168
+ 27 => 'Underwater',
1169
+ 28 => 'Monochrome',
1170
+ 29 => 'Retro',
1171
+ 30 => 'Twilight',
1172
+ 31 => 'Layout (2 images)',
1173
+ 32 => 'Layout (3 images)',
1174
+ 33 => 'Auto Framing',
1175
+ 34 => 'ID Photo',
1176
+ 35 => 'Old Photo',
1177
+ 36 => 'Business Cards',
1178
+ 37 => 'White Board',
1179
+ 38 => 'Voice Recording',
1180
+ },
1181
+ },{
1182
+ Name => 'BestShotMode',
1183
+ Writable => 'int16u',
1184
+ # (Movies have different BestShot numbers for this camera)
1185
+ Condition => '$$self{Model} eq "EX-Z1080"',
1186
+ Notes => 'EX-Z1080',
1187
+ PrintConvColumns => 3,
1188
+ PrintConv => {
1189
+ 0 => 'Off',
1190
+ 1 => 'Auto',
1191
+ 2 => 'Movie',
1192
+ 3 => 'Portrait',
1193
+ 4 => 'Scenery',
1194
+ 5 => 'Portrait with Scenery',
1195
+ 6 => 'Children',
1196
+ 7 => 'Sports',
1197
+ 8 => 'Candlelight Portrait',
1198
+ 9 => 'Party',
1199
+ 10 => 'Pet',
1200
+ 11 => 'Flower',
1201
+ 12 => 'Natural Green',
1202
+ 13 => 'Autumn Leaves',
1203
+ 14 => 'Soft Flowing Water',
1204
+ 15 => 'Splashing Water',
1205
+ 16 => 'Sundown',
1206
+ 17 => 'Night Scene',
1207
+ 18 => 'Night Scene Portrait',
1208
+ 19 => 'Fireworks',
1209
+ 20 => 'Food',
1210
+ 21 => 'Text',
1211
+ 22 => 'Collection',
1212
+ 23 => 'For eBay',
1213
+ 24 => 'Backlight',
1214
+ 25 => 'Anti Shake',
1215
+ 26 => 'High Sensitivity',
1216
+ 27 => 'Underwater',
1217
+ 28 => 'Monochrome',
1218
+ 29 => 'Retro',
1219
+ 30 => 'Twilight',
1220
+ 31 => 'Layout (2 images)',
1221
+ 32 => 'Layout (3 images)',
1222
+ 33 => 'Auto Framing',
1223
+ 34 => 'ID Photo',
1224
+ 35 => 'Old Photo',
1225
+ 36 => 'Business Cards',
1226
+ 37 => 'White Board',
1227
+ 38 => 'Short Movie',
1228
+ 39 => 'Past Movie',
1229
+ 40 => 'For YouTube',
1230
+ 41 => 'Voice Recording',
1231
+ },
1232
+ },{
1233
+ Name => 'BestShotMode',
1234
+ Writable => 'int16u',
1235
+ # (Movies have different BestShot numbers for this camera)
1236
+ Condition => '$$self{Model} eq "EX-Z1200" and $$self{FILE_TYPE} eq "JPEG"',
1237
+ Notes => 'EX-Z1200 JPEG images',
1238
+ PrintConvColumns => 3,
1239
+ PrintConv => {
1240
+ 0 => 'Off',
1241
+ 1 => 'Portrait',
1242
+ 2 => 'Scenery',
1243
+ 3 => 'Portrait with Scenery',
1244
+ 4 => 'Children',
1245
+ 5 => 'Sports',
1246
+ 6 => 'Candlelight Portrait',
1247
+ 7 => 'Party',
1248
+ 8 => 'Pet',
1249
+ 9 => 'Flower',
1250
+ 10 => 'Natural Green',
1251
+ 11 => 'Autumn Leaves',
1252
+ 12 => 'Soft Flowing Water',
1253
+ 13 => 'Splashing Water',
1254
+ 14 => 'Sundown',
1255
+ 15 => 'Night Scene',
1256
+ 16 => 'Night Scene Portrait',
1257
+ 17 => 'Fireworks',
1258
+ 18 => 'Food',
1259
+ 19 => 'Text',
1260
+ 20 => 'Collection',
1261
+ 21 => 'Auction',
1262
+ 22 => 'Backlight',
1263
+ 23 => 'High Sensitivity',
1264
+ 24 => 'Underwater',
1265
+ 25 => 'Monochrome',
1266
+ 26 => 'Retro',
1267
+ 27 => 'Twilight',
1268
+ 28 => 'Layout (2 images)',
1269
+ 29 => 'Layout (3 images)',
1270
+ 30 => 'Auto Framing',
1271
+ 31 => 'ID Photo',
1272
+ 32 => 'Old Photo',
1273
+ 33 => 'Business Cards',
1274
+ 34 => 'White Board',
1275
+ },
1276
+ },{
1277
+ Name => 'BestShotMode',
1278
+ Writable => 'int16u',
1279
+ # (Movies have different BestShot numbers for this camera)
1280
+ Condition => '$$self{Model} eq "EX-Z1200" and $$self{FILE_TYPE} =~ /^(MOV|AVI)$/',
1281
+ Notes => 'EX-Z1200 movies',
1282
+ PrintConvColumns => 3,
1283
+ PrintConv => {
1284
+ 0 => 'Off',
1285
+ 1 => 'Portrait',
1286
+ 2 => 'Scenery',
1287
+ 3 => 'Night Scene',
1288
+ 4 => 'Fireworks',
1289
+ 5 => 'Backlight',
1290
+ 6 => 'High Sensitivity',
1291
+ 7 => 'Silent',
1292
+ 8 => 'Short Movie',
1293
+ 9 => 'Past Movie',
1294
+ },
1295
+ },
1296
+ # (the following weren't numbered in the documentation:
1297
+ # G1, Z300, Z250, Z85, Z19, Z150, F1, FH20)
1298
+ {
1299
+ Name => 'BestShotMode',
1300
+ Writable => 'int16u',
1301
+ Condition => '$$self{Model} eq "EX-Z2000"',
1302
+ Notes => 'EX-Z2000',
1303
+ PrintConvColumns => 3,
1304
+ #http://support.casio.com/download_files/001/faq_pdf/Z2000/EXZ2000_BS_US_a.pdf
1305
+ PrintConv => {
1306
+ 0 => 'Off',
1307
+ 1 => 'Auto',
1308
+ 2 => 'Premium Auto',
1309
+ 3 => 'Dynamic Photo',
1310
+ 4 => 'Portrait',
1311
+ 5 => 'Scenery',
1312
+ 6 => 'Portrait with Scenery',
1313
+ 7 => 'Children',
1314
+ 8 => 'Sports',
1315
+ 9 => 'Candlelight Portrait',
1316
+ 10 => 'Party',
1317
+ 11 => 'Pet',
1318
+ 12 => 'Flower',
1319
+ 13 => 'Natural Green',
1320
+ 14 => 'Autumn Leaves',
1321
+ 15 => 'Soft Flowing Water',
1322
+ 16 => 'Splashing Water',
1323
+ 17 => 'Sundown',
1324
+ 18 => 'Night Scene',
1325
+ 19 => 'Night Scene Portrait',
1326
+ 20 => 'Fireworks',
1327
+ 21 => 'Food',
1328
+ 22 => 'Text',
1329
+ 23 => 'Collection',
1330
+ 24 => 'For eBay',
1331
+ 25 => 'Backlight',
1332
+ 26 => 'High Sensitivity',
1333
+ 27 => 'Oil Painting',
1334
+ 28 => 'Crayon',
1335
+ 29 => 'Water Color',
1336
+ 30 => 'Monochrome',
1337
+ 31 => 'Retro',
1338
+ 32 => 'Twilight',
1339
+ 33 => 'Multi-motion Image',
1340
+ 34 => 'ID Photo',
1341
+ 35 => 'Business Cards',
1342
+ 36 => 'White Board',
1343
+ 37 => 'Silent',
1344
+ 38 => 'Pre-record Movie',
1345
+ 39 => 'For YouTube',
1346
+ 40 => 'Voice Recording',
1347
+ },
1348
+ },{
1349
+ Name => 'BestShotMode',
1350
+ Writable => 'int16u',
1351
+ # (Movies have different BestShot numbers for this camera)
1352
+ Condition => '$$self{Model} eq "EX-Z2300"',
1353
+ Notes => 'EX-Z2300',
1354
+ PrintConvColumns => 3,
1355
+ PrintConv => {
1356
+ 0 => 'Off',
1357
+ 1 => 'Auto',
1358
+ 2 => 'Premium Auto',
1359
+ 3 => 'Dynamic Photo',
1360
+ 4 => 'Portrait',
1361
+ 5 => 'Scenery',
1362
+ 6 => 'Portrait with Scenery',
1363
+ 7 => 'Children',
1364
+ 8 => 'Sports',
1365
+ 9 => 'Candlelight Portrait',
1366
+ 10 => 'Party',
1367
+ 11 => 'Pet',
1368
+ 12 => 'Flower',
1369
+ 13 => 'Natural Green',
1370
+ 14 => 'Autumn Leaves',
1371
+ 15 => 'Soft Flowing Water',
1372
+ 16 => 'Splashing Water',
1373
+ 17 => 'Sundown',
1374
+ 18 => 'Night Scene',
1375
+ 19 => 'Night Scene Portrait',
1376
+ 20 => 'Fireworks',
1377
+ 21 => 'Food',
1378
+ 22 => 'Text',
1379
+ 23 => 'Collection',
1380
+ 24 => 'Auction',
1381
+ 25 => 'Backlight',
1382
+ 26 => 'High Sensitivity',
1383
+ 27 => 'Oil Painting',
1384
+ 28 => 'Crayon',
1385
+ 29 => 'Water Color',
1386
+ 30 => 'Monochrome',
1387
+ 31 => 'Retro',
1388
+ 32 => 'Twilight',
1389
+ 33 => 'Multi-motion Image',
1390
+ 34 => 'ID Photo',
1391
+ 35 => 'Business Cards',
1392
+ 36 => 'White Board',
1393
+ 37 => 'Silent',
1394
+ 38 => 'Pre-record Movie',
1395
+ 39 => 'For YouTube',
1396
+ 40 => 'Voice Recording',
1397
+ },
1398
+ },{
1399
+ Name => 'BestShotMode',
1400
+ Writable => 'int16u',
1401
+ Condition => '$$self{Model} eq "EX-Z3000"',
1402
+ Notes => 'EX-Z3000',
1403
+ PrintConvColumns => 3,
1404
+ PrintConv => {
1405
+ 0 => 'Off',
1406
+ 1 => 'Portrait',
1407
+ 2 => 'Scenery',
1408
+ 3 => 'Portrait With Scenery',
1409
+ 4 => 'Children',
1410
+ 5 => 'Sports',
1411
+ 6 => 'Night Scene',
1412
+ },
1413
+ },{
1414
+ Name => 'BestShotMode',
1415
+ Writable => 'int16u',
1416
+ Condition => '$$self{Model} eq "EX-ZR100"',
1417
+ Notes => 'EX-ZR100',
1418
+ PrintConvColumns => 2,
1419
+ PrintConv => {
1420
+ 0 => 'Off',
1421
+ 1 => 'Child CS',
1422
+ 2 => 'Pet CS',
1423
+ 3 => 'Sports CS',
1424
+ 4 => 'Child High Speed Movie',
1425
+ 5 => 'Pet High Speed Movie',
1426
+ 6 => 'Sports High Speed Movie',
1427
+ 7 => 'Multi SR Zoom',
1428
+ 8 => 'Lag Correction',
1429
+ 9 => 'High Speed Night Scene',
1430
+ 10 => 'High Speed Night Scene and Portrait',
1431
+ 11 => 'High Speed Anti Shake',
1432
+ 12 => 'Portrait',
1433
+ 13 => 'Scenery',
1434
+ 14 => 'Portrait with Scenery',
1435
+ 15 => 'Children',
1436
+ 16 => 'Sports',
1437
+ 17 => 'Candlelight Portrait',
1438
+ 18 => 'Party',
1439
+ 19 => 'Pet',
1440
+ 20 => 'Flower',
1441
+ 21 => 'Natural Green',
1442
+ 22 => 'Autumn Leaves',
1443
+ 23 => 'Soft Flowing Water',
1444
+ 24 => 'Splashing Water',
1445
+ 25 => 'Sundown',
1446
+ 26 => 'Fireworks',
1447
+ 27 => 'Food',
1448
+ 28 => 'Text',
1449
+ 29 => 'Collection',
1450
+ 30 => 'For eBay',
1451
+ 31 => 'Pre-record Movie',
1452
+ 32 => 'For YouTube',
1453
+ },
1454
+ },{
1455
+ Name => 'BestShotMode',
1456
+ Writable => 'int16u',
1457
+ Condition => '$$self{Model} eq "EX-ZR200"',
1458
+ Notes => 'EX-ZR200',
1459
+ PrintConvColumns => 2,
1460
+ PrintConv => {
1461
+ 0 => 'Off',
1462
+ 1 => 'High Speed Night Scene',
1463
+ 2 => 'High Speed Night Scene and Portrait',
1464
+ 3 => 'High Speed Anti Shake',
1465
+ 4 => 'Blurred Background',
1466
+ 5 => 'Wide Shot',
1467
+ 6 => 'High Speed Best Selection',
1468
+ 7 => 'Lag Correction',
1469
+ 8 => 'Child CS',
1470
+ 9 => 'Pet CS',
1471
+ 10 => 'Sports CS',
1472
+ 11 => 'Child High Speed Movie',
1473
+ 12 => 'Pet High Speed Movie',
1474
+ 13 => 'Sports High Speed Movie',
1475
+ 14 => 'Portrait',
1476
+ 15 => 'Scenery',
1477
+ 16 => 'Portrait with Scenery',
1478
+ 17 => 'Children',
1479
+ 18 => 'Sports',
1480
+ 19 => 'Candlelight Portrait',
1481
+ 20 => 'Party',
1482
+ 21 => 'Pet',
1483
+ 22 => 'Flower',
1484
+ 23 => 'Natural Green',
1485
+ 24 => 'Autumn Leaves',
1486
+ 25 => 'Soft Flowing Water',
1487
+ 26 => 'Splashing Water',
1488
+ 27 => 'Sundown',
1489
+ 28 => 'Fireworks',
1490
+ 29 => 'Food',
1491
+ 30 => 'Text',
1492
+ 31 => 'Collection',
1493
+ 32 => 'Auction',
1494
+ 33 => 'Pre-record Movie',
1495
+ 34 => 'For YouTube',
1496
+ },
1497
+ },{ #http://ftp.casio.co.jp/pub/world_manual/qv/en/qv_4000/BS.pdf
1498
+ Name => 'BestShotMode',
1499
+ Writable => 'int16u',
1500
+ Condition => '$$self{Model} eq "QV-4000"',
1501
+ Notes => 'QV-4000',
1502
+ PrintConvColumns => 3,
1503
+ PrintConv => {
1504
+ 0 => 'Off',
1505
+ 1 => 'People',
1506
+ 2 => 'Scenery',
1507
+ 3 => 'Flower',
1508
+ 4 => 'Night Scene',
1509
+ 5 => 'Soft Focus',
1510
+ # this camera also supports 100 modes that you can apparently load
1511
+ # from a CD-ROM, but I don't know how these map into these numbers
1512
+ },
1513
+ },{
1514
+ Name => 'BestShotMode',
1515
+ Writable => 'int16u',
1516
+ Notes => 'other models not yet decoded',
1517
+ # so we can't use a lookup as usual - PH
1518
+ PrintConv => '$val ? $val : "Off"',
1519
+ PrintConvInv => '$val=~/(\d+)/ ? $1 : 0',
1520
+ }],
1521
+ 0x3008 => { #3
1522
+ Name => 'AutoISO',
1523
+ Writable => 'int16u',
1524
+ PrintConv => {
1525
+ 1 => 'On',
1526
+ 2 => 'Off',
1527
+ 7 => 'On (high sensitivity)', #PH
1528
+ 8 => 'On (anti-shake)', #PH
1529
+ 10 => 'High Speed', #PH (EX-FC150)
1530
+ },
1531
+ },
1532
+ 0x3009 => { #6
1533
+ Name => 'AFMode',
1534
+ Writable => 'int16u',
1535
+ PrintConv => {
1536
+ 0 => 'Off',
1537
+ 1 => 'Spot',
1538
+ 2 => 'Multi',
1539
+ 3 => 'Face Detection',
1540
+ 4 => 'Tracking', # (but saw this for "Family First" mode with EX-Z77 - PH)
1541
+ 5 => 'Intelligent',
1542
+ },
1543
+ },
1544
+ 0x3011 => { #3
1545
+ Name => 'Sharpness',
1546
+ Format => 'int16s',
1547
+ Writable => 'undef',
1548
+ },
1549
+ 0x3012 => { #3
1550
+ Name => 'Contrast',
1551
+ Format => 'int16s',
1552
+ Writable => 'undef',
1553
+ },
1554
+ 0x3013 => { #3
1555
+ Name => 'Saturation',
1556
+ Format => 'int16s',
1557
+ Writable => 'undef',
1558
+ },
1559
+ 0x3014 => {
1560
+ Name => 'ISO',
1561
+ Writable => 'int16u',
1562
+ Priority => 0,
1563
+ },
1564
+ 0x3015 => {
1565
+ Name => 'ColorMode',
1566
+ Writable => 'int16u',
1567
+ PrintConv => {
1568
+ 0 => 'Off',
1569
+ 2 => 'Black & White', #PH (EX-Z400,FH20)
1570
+ 3 => 'Sepia', #PH (EX-Z400)
1571
+ },
1572
+ },
1573
+ 0x3016 => {
1574
+ Name => 'Enhancement',
1575
+ Writable => 'int16u',
1576
+ PrintConv => {
1577
+ 0 => 'Off',
1578
+ 1 => 'Scenery', #PH (NC) (EX-Z77)
1579
+ 3 => 'Green', #PH (EX-Z77)
1580
+ 5 => 'Underwater', #PH (NC) (EX-Z77)
1581
+ 9 => 'Flesh Tones', #PH (EX-Z77)
1582
+ },
1583
+ },
1584
+ 0x3017 => {
1585
+ Name => 'ColorFilter',
1586
+ Writable => 'int16u',
1587
+ PrintConv => {
1588
+ 0 => 'Off',
1589
+ 1 => 'Blue', #PH (FH20,Z400)
1590
+ 3 => 'Green', #PH (FH20)
1591
+ 4 => 'Yellow', #PH (FH20)
1592
+ 5 => 'Red', #PH (FH20,Z77)
1593
+ 6 => 'Purple', #PH (FH20,Z77,Z400)
1594
+ 7 => 'Pink', #PH (FH20)
1595
+ },
1596
+ },
1597
+ 0x301b => { #PH
1598
+ Name => 'ArtMode',
1599
+ Writable => 'int16u',
1600
+ PrintConv => {
1601
+ 0 => 'Normal',
1602
+ 8 => 'Silent Movie',
1603
+ 39 => 'HDR', # (EX-ZR10)
1604
+ 45 => 'Premium Auto', # (EX-2300)
1605
+ 47 => 'Painting', # (EX-2300)
1606
+ 49 => 'Crayon Drawing', # (EX-2300)
1607
+ 51 => 'Panorama', # (EX-ZR10)
1608
+ 52 => 'Art HDR', # (EX-ZR10,EX-Z3000)
1609
+ 62 => 'High Speed Night Shot', # (EX-ZR20)
1610
+ 64 => 'Monochrome', # (EX-ZR20)
1611
+ 67 => 'Toy Camera', # (EX-ZR20)
1612
+ 68 => 'Pop Art', # (EX-ZR20)
1613
+ 69 => 'Light Tone', # (EX-ZR20)
1614
+ },
1615
+ },
1616
+ 0x301c => { #3
1617
+ Name => 'SequenceNumber', # for continuous shooting
1618
+ Writable => 'int16u',
1619
+ },
1620
+ 0x301d => { #3
1621
+ Name => 'BracketSequence',
1622
+ Writable => 'int16u',
1623
+ Count => 2,
1624
+ },
1625
+ # 0x301e - MultiBracket ? (ref 3)
1626
+ 0x3020 => { #3
1627
+ Name => 'ImageStabilization',
1628
+ Writable => 'int16u',
1629
+ PrintConv => {
1630
+ 0 => 'Off',
1631
+ 1 => 'On',
1632
+ 2 => 'Best Shot',
1633
+ 3 => 'Movie Anti-Shake', # (EX-V7, EX-TR100)
1634
+ # (newer models write 2 numbers here - PH)
1635
+ '0 0' => 'Off', #PH
1636
+ '16 0' => 'Slow Shutter', #PH (EX-Z77)
1637
+ '18 0' => 'Anti-Shake', #PH (EX-Z77)
1638
+ '20 0' => 'High Sensitivity', #PH (EX-Z77)
1639
+ # EX-Z2000 in 'Auto' mode gives '0 3' or '2 3' (ref 6)
1640
+ '0 1' => 'Off (1)', #6
1641
+ '0 3' => 'CCD Shift', #PH/6 ("Camera AS" in EX-Z2000 manual)
1642
+ '2 1' => 'High Sensitivity', #6
1643
+ '2 3' => 'CCD Shift + High Sensitivity', #PH (EX-FC150)
1644
+ # have also seen:
1645
+ # '2 0' - EX-Z15 1/60s ISO 200, EX-Z77 1/1000s ISO 50
1646
+ # '16 1' - EX-Z2300 1/125s ISO 50
1647
+ },
1648
+ },
1649
+ 0x302a => { #PH (EX-Z450)
1650
+ Name => 'LightingMode', #(just guessing here)
1651
+ Writable => 'int16u',
1652
+ PrintConv => {
1653
+ 0 => 'Off',
1654
+ 1 => 'High Dynamic Range', # (EX-Z77 anti-blur shot)
1655
+ 5 => 'Shadow Enhance Low', #(NC)
1656
+ 6 => 'Shadow Enhance High', #(NC)
1657
+ },
1658
+ },
1659
+ 0x302b => { #PH (EX-Z77)
1660
+ Name => 'PortraitRefiner',
1661
+ Writable => 'int16u',
1662
+ PrintConv => {
1663
+ 0 => 'Off',
1664
+ 1 => '+1',
1665
+ 2 => '+2',
1666
+ },
1667
+ },
1668
+ 0x3030 => { #PH (EX-Z450)
1669
+ Name => 'SpecialEffectLevel',
1670
+ Writable => 'int16u',
1671
+ },
1672
+ 0x3031 => { #PH (EX-Z450)
1673
+ Name => 'SpecialEffectSetting',
1674
+ Writable => 'int16u',
1675
+ PrintConv => {
1676
+ 0 => 'Off',
1677
+ 1 => 'Makeup',
1678
+ 2 => 'Mist Removal',
1679
+ 3 => 'Vivid Landscape',
1680
+ 16 => 'Art Shot', # (EX-Z2300)
1681
+ },
1682
+ },
1683
+ 0x3103 => { #5
1684
+ Name => 'DriveMode',
1685
+ Writable => 'int16u',
1686
+ PrintConvColumns => 2,
1687
+ PrintConv => {
1688
+ OTHER => sub {
1689
+ # handle new values of future models
1690
+ my ($val, $inv) = @_;
1691
+ return $val =~ /(\d+)/ ? $1 : undef if $inv;
1692
+ return "Continuous ($val fps)";
1693
+ },
1694
+ 0 => 'Single Shot', #PH (NC)
1695
+ 1 => 'Continuous Shooting', # (1 fps for the EX-F1)
1696
+ 2 => 'Continuous (2 fps)',
1697
+ 3 => 'Continuous (3 fps)',
1698
+ 4 => 'Continuous (4 fps)',
1699
+ 5 => 'Continuous (5 fps)',
1700
+ 6 => 'Continuous (6 fps)',
1701
+ 7 => 'Continuous (7 fps)',
1702
+ 10 => 'Continuous (10 fps)',
1703
+ 12 => 'Continuous (12 fps)',
1704
+ 15 => 'Continuous (15 fps)',
1705
+ 20 => 'Continuous (20 fps)',
1706
+ 30 => 'Continuous (30 fps)',
1707
+ 40 => 'Continuous (40 fps)', #PH (EX-FH25)
1708
+ 60 => 'Continuous (60 fps)',
1709
+ 240 => 'Auto-N',
1710
+ },
1711
+ },
1712
+ 0x310b => { #PH (NC)
1713
+ Name => 'ArtModeParameters',
1714
+ Writable => 'int8u',
1715
+ Count => 3,
1716
+ # "0 1 0" = Toy camera 1
1717
+ # "0 2 0" = Toy camera 1
1718
+ # "0 3 0" = Toy camera 1
1719
+ # Have also seen "0 0 0" and "2 0 0"
1720
+ },
1721
+ 0x4001 => { #PH (AVI videos)
1722
+ Name => 'CaptureFrameRate',
1723
+ Writable => 'int16u',
1724
+ Count => -1,
1725
+ ValueConv => q{
1726
+ my @v=split(" ",$val);
1727
+ return $val / 1000 if @v == 1;
1728
+ return $v[1] ? "$v[1]-$v[0]" : ($v[0] > 10000 ? $v[0] / 1000 : $v[0]);
1729
+ },
1730
+ ValueConvInv => '$val <= 60 ? $val * 1000 : int($val) . " 0"',
1731
+ },
1732
+ # 0x4002 - AVI videos, related to video quality or size - PH
1733
+ 0x4003 => { #PH (AVI and MOV videos)
1734
+ Name => 'VideoQuality',
1735
+ Writable => 'int16u',
1736
+ PrintConv => {
1737
+ 1 => 'Standard',
1738
+ # 2 - could this be LP?
1739
+ 3 => 'HD (720p)',
1740
+ 4 => 'Full HD (1080p)', # (EX-ZR10, 30fps 1920x1080)
1741
+ 5 => 'Low', # used in High Speed modes
1742
+ },
1743
+ },
1744
+ );
1745
+
1746
+ # face detection information (ref PH) (EX-H5)
1747
+ %Image::ExifTool::Casio::FaceInfo1 = (
1748
+ PROCESS_PROC => \&Image::ExifTool::ProcessBinaryData,
1749
+ WRITE_PROC => \&Image::ExifTool::WriteBinaryData,
1750
+ CHECK_PROC => \&Image::ExifTool::CheckBinaryData,
1751
+ GROUPS => { 0 => 'MakerNotes', 2 => 'Image' },
1752
+ WRITABLE => 1,
1753
+ FIRST_ENTRY => 0,
1754
+ DATAMEMBER => [ 0 ],
1755
+ NOTES => 'Face-detect tags extracted from models such as the EX-H5.',
1756
+ 0x00 => { # (NC)
1757
+ Name => 'FacesDetected',
1758
+ DataMember => 'FacesDetected',
1759
+ RawConv => '$$self{FacesDetected} = $val',
1760
+ },
1761
+ 0x01 => {
1762
+ Name => 'FaceDetectFrameSize',
1763
+ Condition => '$$self{FacesDetected} >= 1', # (otherwise zeros)
1764
+ Format => 'int16u[2]',
1765
+ },
1766
+ 0x0d => {
1767
+ Name => 'Face1Position',
1768
+ Condition => '$$self{FacesDetected} >= 1',
1769
+ Format => 'int16u[4]',
1770
+ Notes => q{
1771
+ left, top, right and bottom of detected face in coordinates of
1772
+ FaceDetectFrameSize, with increasing Y downwards
1773
+ },
1774
+ },
1775
+ # decoding NOT CONFIRMED (NC) for faces 2-10!
1776
+ 0x7c => {
1777
+ Name => 'Face2Position',
1778
+ Condition => '$$self{FacesDetected} >= 2',
1779
+ Format => 'int16u[4]',
1780
+ },
1781
+ 0xeb => {
1782
+ Name => 'Face3Position',
1783
+ Condition => '$$self{FacesDetected} >= 3',
1784
+ Format => 'int16u[4]',
1785
+ },
1786
+ 0x15a => {
1787
+ Name => 'Face4Position',
1788
+ Condition => '$$self{FacesDetected} >= 4',
1789
+ Format => 'int16u[4]',
1790
+ },
1791
+ 0x1c9 => {
1792
+ Name => 'Face5Position',
1793
+ Condition => '$$self{FacesDetected} >= 5',
1794
+ Format => 'int16u[4]',
1795
+ },
1796
+ 0x238 => {
1797
+ Name => 'Face6Position',
1798
+ Condition => '$$self{FacesDetected} >= 6',
1799
+ Format => 'int16u[4]',
1800
+ },
1801
+ 0x2a7 => {
1802
+ Name => 'Face7Position',
1803
+ Condition => '$$self{FacesDetected} >= 7',
1804
+ Format => 'int16u[4]',
1805
+ },
1806
+ 0x316 => {
1807
+ Name => 'Face8Position',
1808
+ Condition => '$$self{FacesDetected} >= 8',
1809
+ Format => 'int16u[4]',
1810
+ },
1811
+ 0x385 => {
1812
+ Name => 'Face9Position',
1813
+ Condition => '$$self{FacesDetected} >= 9',
1814
+ Format => 'int16u[4]',
1815
+ },
1816
+ 0x3f4 => {
1817
+ Name => 'Face10Position',
1818
+ Condition => '$$self{FacesDetected} >= 10',
1819
+ Format => 'int16u[4]',
1820
+ },
1821
+ );
1822
+
1823
+ # face detection information (ref PH) (EX-ZR100)
1824
+ %Image::ExifTool::Casio::FaceInfo2 = (
1825
+ PROCESS_PROC => \&Image::ExifTool::ProcessBinaryData,
1826
+ WRITE_PROC => \&Image::ExifTool::WriteBinaryData,
1827
+ CHECK_PROC => \&Image::ExifTool::CheckBinaryData,
1828
+ GROUPS => { 0 => 'MakerNotes', 2 => 'Image' },
1829
+ WRITABLE => 1,
1830
+ FIRST_ENTRY => 0,
1831
+ DATAMEMBER => [ 2 ],
1832
+ NOTES => 'Face-detect tags extracted from models such as the EX-H20G and EX-ZR100.',
1833
+ 0x02 => {
1834
+ Name => 'FacesDetected',
1835
+ DataMember => 'FacesDetected',
1836
+ RawConv => '$$self{FacesDetected} = $val',
1837
+ },
1838
+ 0x04 => {
1839
+ Name => 'FaceDetectFrameSize',
1840
+ Condition => '$$self{FacesDetected} >= 1',
1841
+ Format => 'int16u[2]',
1842
+ },
1843
+ 0x08 => {
1844
+ Name => 'FaceOrientation',
1845
+ Condition => '$$self{FacesDetected} >= 1',
1846
+ PrintConv => {
1847
+ 0 => 'Horizontal (normal)',
1848
+ 1 => 'Rotate 90 CW',
1849
+ 2 => 'Rotate 270 CW',
1850
+ 3 => 'Rotate 180', # (NC)
1851
+ # (have seen 64 here, but image had no face)
1852
+ },
1853
+ Notes => 'orientation of face relative to unrotated image',
1854
+ },
1855
+ # 0x0a - FaceDetectFrameSize again
1856
+ # 0x11 - Face1Detected flag (1=detected)
1857
+ 0x18 => {
1858
+ Name => 'Face1Position',
1859
+ Condition => '$$self{FacesDetected} >= 1',
1860
+ Format => 'int16u[4]',
1861
+ Notes => q{
1862
+ left, top, right and bottom of detected face in coordinates of
1863
+ FaceDetectFrameSize, with increasing Y downwards
1864
+ },
1865
+ },
1866
+ # 0x45 - Face2Detected, etc...
1867
+ 0x4c => {
1868
+ Name => 'Face2Position',
1869
+ Condition => '$$self{FacesDetected} >= 2',
1870
+ Format => 'int16u[4]',
1871
+ },
1872
+ 0x80 => {
1873
+ Name => 'Face3Position',
1874
+ Condition => '$$self{FacesDetected} >= 3',
1875
+ Format => 'int16u[4]',
1876
+ },
1877
+ 0xb4 => {
1878
+ Name => 'Face4Position',
1879
+ Condition => '$$self{FacesDetected} >= 4',
1880
+ Format => 'int16u[4]',
1881
+ },
1882
+ 0xe8 => {
1883
+ Name => 'Face5Position',
1884
+ Condition => '$$self{FacesDetected} >= 5',
1885
+ Format => 'int16u[4]',
1886
+ },
1887
+ 0x11c => {
1888
+ Name => 'Face6Position',
1889
+ Condition => '$$self{FacesDetected} >= 6',
1890
+ Format => 'int16u[4]',
1891
+ },
1892
+ 0x150 => {
1893
+ Name => 'Face7Position',
1894
+ Condition => '$$self{FacesDetected} >= 7',
1895
+ Format => 'int16u[4]',
1896
+ },
1897
+ 0x184 => {
1898
+ Name => 'Face8Position',
1899
+ Condition => '$$self{FacesDetected} >= 8',
1900
+ Format => 'int16u[4]',
1901
+ },
1902
+ 0x1b8 => {
1903
+ Name => 'Face9Position',
1904
+ Condition => '$$self{FacesDetected} >= 9',
1905
+ Format => 'int16u[4]',
1906
+ },
1907
+ 0x1ec => {
1908
+ Name => 'Face10Position',
1909
+ Condition => '$$self{FacesDetected} >= 10',
1910
+ Format => 'int16u[4]',
1911
+ },
1912
+ );
1913
+
1914
+ # Casio APP1 QVCI segment found in QV-7000SX images (ref PH)
1915
+ %Image::ExifTool::Casio::QVCI = (
1916
+ PROCESS_PROC => \&Image::ExifTool::ProcessBinaryData,
1917
+ GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' },
1918
+ FIRST_ENTRY => 0,
1919
+ NOTES => q{
1920
+ This information is found in the APP1 QVCI segment of JPEG images from the
1921
+ Casio QV-7000SX.
1922
+ },
1923
+ 0x2c => {
1924
+ Name => 'CasioQuality',
1925
+ PrintConv => {
1926
+ 1 => 'Economy',
1927
+ 2 => 'Normal',
1928
+ 3 => 'Fine',
1929
+ 4 => 'Super Fine',
1930
+ },
1931
+ },
1932
+ 0x37 => {
1933
+ Name => 'FocalRange',
1934
+ Unknown => 1,
1935
+ },
1936
+ 0x4d => {
1937
+ Name => 'DateTimeOriginal',
1938
+ Description => 'Date/Time Original',
1939
+ Format => 'string[20]',
1940
+ Groups => { 2 => 'Time' },
1941
+ ValueConv => '$val=~tr/./:/; $val=~s/(\d+:\d+:\d+):/$1 /; $val',
1942
+ PrintConv => '$self->ConvertDateTime($val)',
1943
+ },
1944
+ 0x62 => {
1945
+ Name => 'ModelType',
1946
+ Format => 'string[7]',
1947
+ },
1948
+ 0x72 => { # could be serial number or manufacture date in form YYMMDDxx ?
1949
+ Name => 'ManufactureIndex',
1950
+ Format => 'string[9]',
1951
+ },
1952
+ 0x7c => {
1953
+ Name => 'ManufactureCode',
1954
+ Format => 'string[9]',
1955
+ },
1956
+ );
1957
+
1958
+ # tags in Casio AVI videos (ref PH)
1959
+ %Image::ExifTool::Casio::AVI = (
1960
+ PROCESS_PROC => \&Image::ExifTool::ProcessBinaryData,
1961
+ GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' },
1962
+ FIRST_ENTRY => 0,
1963
+ NOTES => 'This information is found in Casio GV-10 AVI videos.',
1964
+ 0 => {
1965
+ Name => 'Software', # (equivalent to RIFF Software tag)
1966
+ Format => 'string',
1967
+ },
1968
+ );
1969
+
1970
+
1971
+ 1; # end
1972
+
1973
+ __END__
1974
+
1975
+ =head1 NAME
1976
+
1977
+ Image::ExifTool::Casio - Casio EXIF maker notes tags
1978
+
1979
+ =head1 SYNOPSIS
1980
+
1981
+ This module is loaded automatically by Image::ExifTool when required.
1982
+
1983
+ =head1 DESCRIPTION
1984
+
1985
+ This module contains definitions required by Image::ExifTool to interpret
1986
+ Casio maker notes in EXIF information.
1987
+
1988
+ =head1 AUTHOR
1989
+
1990
+ Copyright 2003-2013, Phil Harvey (phil at owl.phy.queensu.ca)
1991
+
1992
+ This library is free software; you can redistribute it and/or modify it
1993
+ under the same terms as Perl itself.
1994
+
1995
+ =head1 REFERENCES
1996
+
1997
+ =over 4
1998
+
1999
+ =item L<http://park2.wakwak.com/~tsuruzoh/Computer/Digicams/exif-e.html>
2000
+
2001
+ =back
2002
+
2003
+ =head1 ACKNOWLEDGEMENTS
2004
+
2005
+ Thanks to Joachim Loehr for adding support for the type 2 maker notes, and
2006
+ Jens Duttke and Robert Chi for decoding some tags.
2007
+
2008
+ =head1 SEE ALSO
2009
+
2010
+ L<Image::ExifTool::TagNames/Casio Tags>,
2011
+ L<Image::ExifTool(3pm)|Image::ExifTool>
2012
+
2013
+ =cut