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