exiftool_vendored 12.98.0 → 13.02.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (43) hide show
  1. checksums.yaml +4 -4
  2. data/bin/Changes +73 -1
  3. data/bin/META.json +1 -1
  4. data/bin/META.yml +1 -1
  5. data/bin/README +2 -2
  6. data/bin/arg_files/exif2xmp.args +4 -0
  7. data/bin/arg_files/xmp2exif.args +4 -0
  8. data/bin/config_files/example.config +2 -1
  9. data/bin/exiftool +297 -66
  10. data/bin/lib/Image/ExifTool/APP12.pm +3 -2
  11. data/bin/lib/Image/ExifTool/CBOR.pm +4 -1
  12. data/bin/lib/Image/ExifTool/Canon.pm +36 -26
  13. data/bin/lib/Image/ExifTool/Exif.pm +8 -9
  14. data/bin/lib/Image/ExifTool/FlashPix.pm +5 -9
  15. data/bin/lib/Image/ExifTool/Geolocation.dat +0 -0
  16. data/bin/lib/Image/ExifTool/Geotag.pm +6 -5
  17. data/bin/lib/Image/ExifTool/GoPro.pm +2 -2
  18. data/bin/lib/Image/ExifTool/Import.pm +7 -3
  19. data/bin/lib/Image/ExifTool/JSON.pm +3 -4
  20. data/bin/lib/Image/ExifTool/Jpeg2000.pm +2 -2
  21. data/bin/lib/Image/ExifTool/LNK.pm +1 -1
  22. data/bin/lib/Image/ExifTool/Lytro.pm +2 -2
  23. data/bin/lib/Image/ExifTool/M2TS.pm +2 -2
  24. data/bin/lib/Image/ExifTool/MIE.pm +9 -3
  25. data/bin/lib/Image/ExifTool/MacOS.pm +2 -1
  26. data/bin/lib/Image/ExifTool/Nikon.pm +5 -2
  27. data/bin/lib/Image/ExifTool/PDF.pm +7 -3
  28. data/bin/lib/Image/ExifTool/PhaseOne.pm +2 -1
  29. data/bin/lib/Image/ExifTool/QuickTime.pm +11 -1
  30. data/bin/lib/Image/ExifTool/QuickTimeStream.pl +88 -9
  31. data/bin/lib/Image/ExifTool/TagLookup.pm +14 -9
  32. data/bin/lib/Image/ExifTool/TagNames.pod +37 -20
  33. data/bin/lib/Image/ExifTool/Text.pm +3 -2
  34. data/bin/lib/Image/ExifTool/Validate.pm +2 -2
  35. data/bin/lib/Image/ExifTool/WriteXMP.pl +16 -4
  36. data/bin/lib/Image/ExifTool/Writer.pl +42 -61
  37. data/bin/lib/Image/ExifTool/XMP.pm +13 -3
  38. data/bin/lib/Image/ExifTool/XMPStruct.pl +16 -9
  39. data/bin/lib/Image/ExifTool.pm +190 -77
  40. data/bin/lib/Image/ExifTool.pod +73 -36
  41. data/bin/perl-Image-ExifTool.spec +1 -1
  42. data/lib/exiftool_vendored/version.rb +1 -1
  43. metadata +2 -2
@@ -332,13 +332,14 @@ L</ImageInfo>:
332
332
 
333
333
  Values of the returned hash are usually simple scalars, but a scalar
334
334
  reference is used to indicate binary data and an array reference may be used
335
- to indicate a list. Also, a hash reference may be returned if the L</Struct>
336
- option is used. Lists of values are joined by commas into a single
337
- string only if the PrintConv option is enabled and the ListJoin option is
338
- enabled (which are the defaults). Note that binary values are not
339
- necessarily extracted unless specifically requested, or the Binary option is
340
- enabled and the tag is not specifically excluded. If not extracted the
341
- value is a reference to a string of the form "Binary data ##### bytes".
335
+ to indicate a list. Also, a hash reference may be returned if the
336
+ L</Struct> option is used (see the L</OrderedKeys> option to obtain the hash
337
+ keys). Lists of values are joined by commas into a single string only if
338
+ the PrintConv option is enabled and the ListJoin option is enabled (which
339
+ are the defaults). Note that binary values are not necessarily extracted
340
+ unless specifically requested, or the Binary option is enabled and the tag
341
+ is not specifically excluded. If not extracted the value is a reference to
342
+ a string of the form "Binary data ##### bytes".
342
343
 
343
344
  The code below gives an example of how to handle these return values, as
344
345
  well as illustrating the use of other ExifTool functions:
@@ -519,9 +520,9 @@ set to undef to pass through EXIF "ASCII" values without recoding. Set to
519
520
  =item CharsetFileName
520
521
 
521
522
  External character set used for file names passed to ExifTool functions.
522
- When set in Windows, this triggers use of Windows wide-character i/o library
523
- routines (requires Win32API::File). Default is undef. May also be set to
524
- an empty string to avoid "encoding not specified" warnings on Windows.
523
+ Default is undef but "UTF8" is assumed in Windows if the file name contains
524
+ special characters and is valid UTF8. May also be set to an empty string to
525
+ avoid "encoding must be specified" warnings on Windows.
525
526
 
526
527
  =item CharsetID3
527
528
 
@@ -980,7 +981,7 @@ normally. Currently this feature applies only to GM PDR data (see
980
981
  L<Image::ExifTool::TagNames/GM Tags>). Setting this option automatically
981
982
  sets L</IgnoreTags> to "all", and L</ExtractEmbedded> to 1. Default is
982
983
  undef.
983
-
984
+
984
985
  =item QuickTimeHandler
985
986
 
986
987
  Flag set to add an 'mdir' Handler to a newly created Meta box when adding
@@ -1027,6 +1028,11 @@ current RequestTags list. Groups are requested by adding a colon after the
1027
1028
  name (eg. "MacOS:"). Names are converted to lower case as they are added to
1028
1029
  the list. Default is undef.
1029
1030
 
1031
+ =item SaveBin
1032
+
1033
+ Flag to save binary values of tags, accessible through calls to L</GetValue>
1034
+ with a value type of "Bin".
1035
+
1030
1036
  =item SaveFormat
1031
1037
 
1032
1038
  Flag to save EXIF/TIFF format type as the family 6 group name when
@@ -1089,7 +1095,9 @@ values in standard format).
1089
1095
 
1090
1096
  Flag to return XMP structures as hash references instead of flattening into
1091
1097
  individual tags. Has no effect when writing since both flattened and
1092
- structured tags may always be written. Possible values are:
1098
+ structured tags may always be written. A special "_ordered_keys_" element
1099
+ containing a list of ordered keys may exist if the structure elements are
1100
+ ordered (see the L<OrderedKeys> method). Possible values are:
1093
1101
 
1094
1102
  undef - (default) Same as 0 for reading, 2 for copying
1095
1103
  0 - Read/copy flattened tags
@@ -1173,13 +1181,17 @@ details about the tags. Level 3 adds a hex dump of the tag data, but with
1173
1181
  limits on the number of bytes dumped. Levels 4 and 5 remove the dump limit
1174
1182
  on tag values and JPEG segment data respectively.
1175
1183
 
1184
+ =item WindowsLongPath
1185
+
1186
+ Support long path names in Windows. Enabling this option automatically
1187
+ enables the WindowsWideFile feature.
1188
+
1176
1189
  =item WindowsWideFile
1177
1190
 
1178
- Force the use of wide-character Windows I/O functions when the
1179
- L</CharsetFileName> option is used. This may be necessary when files are on
1180
- a network drive and the current directory name contains Unicode characters.
1181
- By default, the wide-character functions are used only if the specified file
1182
- path contains Unicode characters.
1191
+ Force the use of wide-character Windows I/O functions. This may be
1192
+ necessary when files are on a network drive and the current directory name
1193
+ contains Unicode characters. By default, the wide-character functions are
1194
+ used only if the specified file path contains Unicode characters.
1183
1195
 
1184
1196
  =item WriteMode
1185
1197
 
@@ -1254,8 +1266,9 @@ CharsetPhotoshop, CharsetQuickTime, CharsetRIFF, Composite, ExtendedXMP,
1254
1266
  ExtractEmbedded, FastScan, FixBase, HtmlDump, HtmlDumpBase, IgnoreGroups,
1255
1267
  IgnoreMinorErrors, IgnoreTags, Lang, LargeFileSupport, MakerNotes,
1256
1268
  MDItemTags, NoPDFList, Password, QuickTimeUTC (enforced 1904 time zero),
1257
- RequestAll, RequestTags, SaveFormat, SavePath, ScanForXMP, Struct, TextOut,
1258
- Unknown, Verbose, WindowsWideFile, XAttrTags and XMPAutoConv.
1269
+ RequestAll, RequestTags, SaveBin, SaveFormat, SavePath, ScanForXMP, Struct,
1270
+ TextOut, Unknown, Verbose, WindowsLongPath, WindowsWideFile, XAttrTags and
1271
+ XMPAutoConv.
1259
1272
 
1260
1273
  =item Return Value:
1261
1274
 
@@ -1394,7 +1407,8 @@ The following ExifTool options are effective in the call to L</WriteInfo>:
1394
1407
 
1395
1408
  ByteOrder, Charset, CharsetEXIF, CharsetFileName, CharsetIPTC, Compact,
1396
1409
  Compress, FixBase, IgnoreMinorErrors, NoMultiExif, NoPDFList, Password,
1397
- QuickTimeHandler, QuickTimePad, Verbose, WindowsWideFile and WriteMode.
1410
+ QuickTimeHandler, QuickTimePad, Verbose, WindowsLongPath, WindowsWideFile
1411
+ and WriteMode.
1398
1412
 
1399
1413
  =head2 GetTagList
1400
1414
 
@@ -1532,14 +1546,15 @@ StrictDate and TimeZone.
1532
1546
 
1533
1547
  1) Tag key, or case-sensitive tag name with optional group prefix(es)
1534
1548
 
1535
- 2) [optional] Value type: 'PrintConv', 'ValueConv', 'Both', 'Raw' or
1549
+ 2) [optional] Value type: 'PrintConv', 'ValueConv', 'Both', 'Raw', 'Bin' or
1536
1550
  'Rational'
1537
1551
 
1538
1552
  The default value type is 'PrintConv' if the PrintConv option is set,
1539
1553
  otherwise the default is 'ValueConv'. A value type of 'Both' returns both
1540
- ValueConv and PrintConv values as a list. 'Rational' returns the raw
1541
- rational value as a string fraction for rational types, or undef for other
1542
- types.
1554
+ ValueConv and PrintConv values as a list. 'Raw' returns the raw decoded tag
1555
+ value. 'Bin' returns the original binary data for EXIF tags if the
1556
+ L</SaveBin> option was set. 'Rational' returns the raw rational value as a
1557
+ string fraction for rational types, or undef for other types.
1543
1558
 
1544
1559
  =item Return Values:
1545
1560
 
@@ -2391,7 +2406,8 @@ Get a list of available API options. (See L</Options> for option details.)
2391
2406
  =item Return Values:
2392
2407
 
2393
2408
  Reference to list of available options. Each entry in the list is a list
2394
- reference with 3 items: 0=Option name, 1=Default value, 2=Description.
2409
+ reference with 4 items: 0=Option name, 1=Default value, 2=Description,
2410
+ 3=flag set if option is undocumented.
2395
2411
 
2396
2412
  my $opts = Image::ExifTool::<b>AvailableOptions</b>();
2397
2413
  foreach (@$opts) {
@@ -2550,17 +2566,18 @@ Real-PROP, Real-RA3, Real-RA4, Real-RA5, Real-RJMD, Reconyx, Red, Ricoh,
2550
2566
  SPIFF, SR2, SR2DataIFD, SR2SubIFD, SRF#, SVG, Samsung, Sanyo, Scalado,
2551
2567
  Sigma, SigmaRaw, Sony, SonyIDC, Stim, SubIFD, System, Theora, Torrent,
2552
2568
  Track#, UserData, VCalendar, VCard, VNote, Version0, Vorbis, WTV, XML, XMP,
2553
- XMP-DICOM, XMP-Device, XMP-GAudio, XMP-GCamera, XMP-GCreations, XMP-GDepth,
2554
- XMP-GFocus, XMP-GImage, XMP-GPano, XMP-GSpherical, XMP-LImage, XMP-MP,
2555
- XMP-MP1, XMP-PixelLive, XMP-aas, XMP-acdsee, XMP-album, XMP-apple-fi,
2556
- XMP-ast, XMP-aux, XMP-cc, XMP-cell, XMP-crd, XMP-creatorAtom, XMP-crs,
2557
- XMP-dc, XMP-dex, XMP-digiKam, XMP-drone-dji, XMP-dwc, XMP-et, XMP-exif,
2558
- XMP-exifEX, XMP-expressionmedia, XMP-extensis, XMP-fpv, XMP-getty, XMP-hdr,
2559
- XMP-hdrgm, XMP-ics, XMP-iptcCore, XMP-iptcExt, XMP-lr, XMP-mediapro,
2560
- XMP-microsoft, XMP-mwg-coll, XMP-mwg-kw, XMP-mwg-rs, XMP-nine, XMP-panorama,
2561
- XMP-pdf, XMP-pdfx, XMP-photomech, XMP-photoshop, XMP-plus, XMP-pmi,
2562
- XMP-prism, XMP-prl, XMP-prm, XMP-pur, XMP-rdf, XMP-sdc, XMP-swf, XMP-tiff,
2563
- XMP-x, XMP-xmp, XMP-xmpBJ, XMP-xmpDM, XMP-xmpDSA, XMP-xmpMM, XMP-xmpNote,
2569
+ XMP-DICOM, XMP-Device, XMP-GAudio, XMP-GCamera, XMP-GContainer,
2570
+ XMP-GCreations, XMP-GDepth, XMP-GFocus, XMP-GImage, XMP-GPano,
2571
+ XMP-GSpherical, XMP-LImage, XMP-MP, XMP-MP1, XMP-PixelLive, XMP-aas,
2572
+ XMP-acdsee, XMP-acdsee-rs, XMP-album, XMP-apple-fi, XMP-ast, XMP-aux,
2573
+ XMP-cc, XMP-cell, XMP-crd, XMP-creatorAtom, XMP-crs, XMP-dc, XMP-dex,
2574
+ XMP-digiKam, XMP-drone-dji, XMP-dwc, XMP-et, XMP-exif, XMP-exifEX,
2575
+ XMP-expressionmedia, XMP-extensis, XMP-fpv, XMP-getty, XMP-hdr, XMP-hdrgm,
2576
+ XMP-ics, XMP-iptcCore, XMP-iptcExt, XMP-lr, XMP-mediapro, XMP-microsoft,
2577
+ XMP-mwg-coll, XMP-mwg-kw, XMP-mwg-rs, XMP-nine, XMP-panorama, XMP-pdf,
2578
+ XMP-pdfx, XMP-photomech, XMP-photoshop, XMP-plus, XMP-pmi, XMP-prism,
2579
+ XMP-prl, XMP-prm, XMP-pur, XMP-rdf, XMP-sdc, XMP-swf, XMP-tiff, XMP-x,
2580
+ XMP-xmp, XMP-xmpBJ, XMP-xmpDM, XMP-xmpDSA, XMP-xmpMM, XMP-xmpNote,
2564
2581
  XMP-xmpPLUS, XMP-xmpRights, XMP-xmpTPg, ZIP, iTunes
2565
2582
 
2566
2583
  =item Family 2 (Category):
@@ -2749,6 +2766,26 @@ details on the elements of the tag information hash.
2749
2766
 
2750
2767
  =back
2751
2768
 
2769
+ =head2 OrderedKeys [static]
2770
+
2771
+ Return a list of ordered keys from a tag value that is a HASH reference
2772
+ when the Struct option is used.
2773
+
2774
+ use Image::ExifTool ':Public';
2775
+ my @keys = OrderedKeys($structRef);
2776
+
2777
+ =over 4
2778
+
2779
+ =item Inputs:
2780
+
2781
+ 0) Structure HASH reference
2782
+
2783
+ =item Return Value:
2784
+
2785
+ List of ordered keys, or sorted alphabetically if not ordered.
2786
+
2787
+ =back
2788
+
2752
2789
  =head1 CHARACTER ENCODINGS
2753
2790
 
2754
2791
  Certain meta information formats allow coded character sets other than plain
@@ -1,6 +1,6 @@
1
1
  Summary: perl module for image data extraction
2
2
  Name: perl-Image-ExifTool
3
- Version: 12.98
3
+ Version: 13.02
4
4
  Release: 1
5
5
  License: Artistic/GPL
6
6
  Group: Development/Libraries/Perl
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ExiftoolVendored
4
- VERSION = Gem::Version.new('12.98.0')
4
+ VERSION = Gem::Version.new('13.02.0')
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: exiftool_vendored
3
3
  version: !ruby/object:Gem::Version
4
- version: 12.98.0
4
+ version: 13.02.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matthew McEachen
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2024-10-09 00:00:00.000000000 Z
12
+ date: 2024-11-11 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: exiftool