exiftool_vendored 12.76.1 → 12.81.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (67) hide show
  1. checksums.yaml +4 -4
  2. data/bin/Changes +105 -4
  3. data/bin/MANIFEST +29 -0
  4. data/bin/META.json +1 -1
  5. data/bin/META.yml +1 -1
  6. data/bin/README +4 -3
  7. data/bin/config_files/acdsee.config +37 -57
  8. data/bin/config_files/example.config +16 -2
  9. data/bin/exiftool +102 -31
  10. data/bin/lib/Image/ExifTool/Canon.pm +12 -9
  11. data/bin/lib/Image/ExifTool/CanonVRD.pm +8 -2
  12. data/bin/lib/Image/ExifTool/Exif.pm +52 -4
  13. data/bin/lib/Image/ExifTool/FujiFilm.pm +14 -5
  14. data/bin/lib/Image/ExifTool/GPS.pm +5 -3
  15. data/bin/lib/Image/ExifTool/GeoLang/cs.pm +978 -0
  16. data/bin/lib/Image/ExifTool/GeoLang/de.pm +1975 -0
  17. data/bin/lib/Image/ExifTool/GeoLang/en_ca.pm +44 -0
  18. data/bin/lib/Image/ExifTool/GeoLang/en_gb.pm +124 -0
  19. data/bin/lib/Image/ExifTool/GeoLang/es.pm +2921 -0
  20. data/bin/lib/Image/ExifTool/GeoLang/fi.pm +1116 -0
  21. data/bin/lib/Image/ExifTool/GeoLang/fr.pm +3171 -0
  22. data/bin/lib/Image/ExifTool/GeoLang/it.pm +2750 -0
  23. data/bin/lib/Image/ExifTool/GeoLang/ja.pm +10256 -0
  24. data/bin/lib/Image/ExifTool/GeoLang/ko.pm +4499 -0
  25. data/bin/lib/Image/ExifTool/GeoLang/nl.pm +1270 -0
  26. data/bin/lib/Image/ExifTool/GeoLang/pl.pm +3019 -0
  27. data/bin/lib/Image/ExifTool/GeoLang/ru.pm +18220 -0
  28. data/bin/lib/Image/ExifTool/GeoLang/sk.pm +441 -0
  29. data/bin/lib/Image/ExifTool/GeoLang/sv.pm +714 -0
  30. data/bin/lib/Image/ExifTool/GeoLang/tr.pm +452 -0
  31. data/bin/lib/Image/ExifTool/GeoLang/zh_cn.pm +2225 -0
  32. data/bin/lib/Image/ExifTool/GeoLang/zh_tw.pm +72 -0
  33. data/bin/lib/Image/ExifTool/Geolocation.dat +0 -0
  34. data/bin/lib/Image/ExifTool/Geolocation.pm +935 -0
  35. data/bin/lib/Image/ExifTool/Geotag.pm +14 -2
  36. data/bin/lib/Image/ExifTool/HtmlDump.pm +2 -1
  37. data/bin/lib/Image/ExifTool/Import.pm +5 -2
  38. data/bin/lib/Image/ExifTool/JSON.pm +15 -10
  39. data/bin/lib/Image/ExifTool/M2TS.pm +32 -4
  40. data/bin/lib/Image/ExifTool/MWG.pm +1 -0
  41. data/bin/lib/Image/ExifTool/MacOS.pm +19 -4
  42. data/bin/lib/Image/ExifTool/MakerNotes.pm +2 -2
  43. data/bin/lib/Image/ExifTool/Microsoft.pm +1 -1
  44. data/bin/lib/Image/ExifTool/Nikon.pm +331 -23
  45. data/bin/lib/Image/ExifTool/NikonCustom.pm +55 -1
  46. data/bin/lib/Image/ExifTool/Ogg.pm +3 -2
  47. data/bin/lib/Image/ExifTool/Olympus.pm +4 -1
  48. data/bin/lib/Image/ExifTool/OpenEXR.pm +37 -19
  49. data/bin/lib/Image/ExifTool/PDF.pm +5 -5
  50. data/bin/lib/Image/ExifTool/PNG.pm +3 -3
  51. data/bin/lib/Image/ExifTool/Pentax.pm +1 -1
  52. data/bin/lib/Image/ExifTool/QuickTime.pm +195 -12
  53. data/bin/lib/Image/ExifTool/QuickTimeStream.pl +253 -237
  54. data/bin/lib/Image/ExifTool/README +6 -5
  55. data/bin/lib/Image/ExifTool/Sony.pm +1 -1
  56. data/bin/lib/Image/ExifTool/TagLookup.pm +4871 -4752
  57. data/bin/lib/Image/ExifTool/TagNames.pod +722 -383
  58. data/bin/lib/Image/ExifTool/WriteQuickTime.pl +43 -9
  59. data/bin/lib/Image/ExifTool/WriteXMP.pl +1 -1
  60. data/bin/lib/Image/ExifTool/Writer.pl +65 -8
  61. data/bin/lib/Image/ExifTool/XMP.pm +18 -2
  62. data/bin/lib/Image/ExifTool/XMP2.pl +64 -0
  63. data/bin/lib/Image/ExifTool.pm +265 -49
  64. data/bin/lib/Image/ExifTool.pod +63 -25
  65. data/bin/perl-Image-ExifTool.spec +2 -2
  66. data/lib/exiftool_vendored/version.rb +1 -1
  67. metadata +22 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7acf0f7d008e3a9b01730fbe29d0c0fa4019e40bab81347a6f28600afa11a0ad
4
- data.tar.gz: adbae416142dd2f73e5184b29552400f2862bb8e6310b3e6bdb3b6cfe10f5a25
3
+ metadata.gz: 7ba2444c39547a29d2fc1571e6dd379717eacc8bd4ddabe6eb65fd5129b8b072
4
+ data.tar.gz: 72c5c28b89791790a889835831e94c5dc27eb7b635b8a35b4e8d2c2775684b2a
5
5
  SHA512:
6
- metadata.gz: 667df77a43ef7d665315ce5da38775d5d9027099e507dda712da9c4099fcbaf372ef5364bffddc91323f18072ab31c408077ee7f57e52d7eff2b674c6d62dcf1
7
- data.tar.gz: ccc0c4439a7f155acdada214d73944361e9ffffae98959860fcac18a034547d6ccd3f4d63e79c93b291051f0ca7ab14dbdc0c180acb16eae9f18da47a3bc390f
6
+ metadata.gz: 38d482929aafd323864314e3dd10f08c43b3798bc345457342010cad7a032fe193a5a6d39daf82666cb7b56c0da7db1da78794811c7ad0fbde63f256e674be6d
7
+ data.tar.gz: a7826bccc3d66f967e5978c4b689a846a510c66f005812283170791a3a1cb24ddaa7ed52d9cc6b86d9ac3f5eabf83cfa950c9a03a907a3974e67c90e9d38b647
data/bin/Changes CHANGED
@@ -7,6 +7,106 @@ RSS feed: https://exiftool.org/rss.xml
7
7
  Note: The most recent production release is Version 12.76. (Other versions are
8
8
  considered development releases, and are not uploaded to MetaCPAN.)
9
9
 
10
+ Mar. 27, 2024 - Version 12.81
11
+
12
+ - Added ability to read EXIF and XMP from EXR images
13
+ - Added ability to delete unknown trailer when writing MOV/MP4 videos
14
+ - Added ability to write a couple of Stable Diffusion PNG tags
15
+ - Added ability to write one of the Microsoft Xtra Description tags (github
16
+ #248)
17
+ - Added support for using alternate city names in reverse Geolocation
18
+ - Added support for reading timed GPS from DOD LS600W TS videos
19
+ - Added support for new version of Canon DR4 files
20
+ - Added a number of new iTunesInfo tags
21
+ - Added a new Olympus LensType
22
+ - Allow regular expressions to be used when writing Geolocate tag
23
+ - Decode a number of new Nikon tags (thanks Warren Hatch)
24
+ - Enhanced writing of Geolocate tag to also write Keys:LocationName
25
+ - Cache the results of the last reverse geolocation search to speed batch
26
+ processing when multiple files have the same search parameters
27
+ - Patched problem that could cause runtime errors with some invaid tag names
28
+ - Fixed a couple of newly added FujiFilm tags
29
+ - Fixed decoding of FujiFilm AFAreaZoneSize
30
+ - API Changes:
31
+ - Added GeolocAltNames option
32
+
33
+ Mar. 19, 2024 - Version 12.80
34
+
35
+ - Added GeolocationFeatureCode tag
36
+ - Added XMP-acdsee-rs tags and a new XMP-xmpDM tag
37
+ - Added ACDSeeRegion2MWGRegion conversion to config_files/acdsee.config
38
+ - Added GPSAltitudeRef to XMP-iptcExt LocationDetails structure
39
+ - Added a couple of new FujiFilm tags and a new CropMode value
40
+ - Added conversion for XMP-aux:ApproximateFocusDistance "infinity"
41
+ - Improved Geolocation regular expressions to allow negative matches
42
+ - Improved accuracy of Geolocation distance/bearing calculations
43
+ - Changed structure of Geolocation database (now version 1.02)
44
+ - Minor change to key format for user-defined Geolocation name translations
45
+ - Ignore API Geolocation option when copying tags if none of the Geolocation
46
+ tags are being copied
47
+ - Fixed case/spacing of "C2PA" in some CBOR tag descriptions
48
+ - Fixed bug extracting binary data from EXR files
49
+ - API Changes:
50
+ - Added GeolocFeature option
51
+
52
+ Mar. 15, 2024 - Version 12.79
53
+
54
+ - Improvements to new Geolocation feature:
55
+ - Added reverse Geolocation ability (obtain GPS coordinates from city
56
+ name), with support for regular expressions
57
+ - Added ability to geolocate while geotagging
58
+ - Added -listgeo option to list the Geolocation database
59
+ - Added the ability to include user-defined cities in the Geolocation
60
+ database
61
+ - Added the ability to write XMP-iptcExt LocationShown tags using Geolocate
62
+ feature
63
+ - Added the ability to specify which tags to read from file for the API
64
+ Geolocation option
65
+ - Added language translations for Geolocation names
66
+ - Increased resolution of Geolocation GPS positions and stored populations
67
+ - API Changes:
68
+ - Save necessary data members to allow GetInfo to be accessed by
69
+ user-defined tags
70
+
71
+ Mar. 5, 2024 - Version 12.78 - "Geolocation"
72
+
73
+ - Added new Geolocation feature and write-only Geolocate tag
74
+ - Added new config file entry (@Image::ExifTool::UserDefined::Arguments) to
75
+ allow default command-line arguments to be specified
76
+ - Added print conversion for TIFF-EPStandardID
77
+ - Added ability to delete Nextbase information from MP4 videos
78
+ - Decode timed GPS from MP4 videos written by Nextbase software
79
+ - Decode a number of new tags from Nextbase MP4 videos
80
+ - Decode a few new tags from Garmin MP4 videos
81
+ - Extract PreviewJXL images from DNG 1.7 files
82
+ - Generate Validate, ImageDataHash and UserParam tags earlier to allow them to
83
+ be used in UserDefined Composite tags
84
+ - Enhanced the -c option so a minus sign in the format specification prints a
85
+ signed coordinate without a leading "+" for positive numbers
86
+ - Changed formatting of some Accelerometer tags for consistency
87
+ - Changed behaviour of -ee3 option to do a brute-force scan for freeGPS in the
88
+ media data even when referenced by 'gps ' atom
89
+ - Other internal changes to decoding of timed GPS from videos
90
+ - Fixed problem were ExifTool would give up on extracting some types of timed
91
+ GPS from videos after 100 void fixes
92
+ - Fixed bug that could cause runtime error when reading Ogg files
93
+ - Fixed issue where some tags from alternate files using the -fileNUM option
94
+ weren't generated as requested
95
+ - API Changes:
96
+ - Added Geolocation, GeolocMaxDist and GeolocMinPop API options
97
+
98
+ Feb. 16, 2024 - Version 12.77
99
+
100
+ - Added new Olympus CameraType and LensType value (thanks herb)
101
+ - Added a new Canon Irix LensType
102
+ - Added the ability to delete MacOS XAttrMDItemWhereFroms
103
+ - Decode a few new Canon DPP tags (thanks John Moyer)
104
+ - Decode timed GPS from Adzome GS65H MOV videos
105
+ - Improved handling of XML-unfriendly characters in JSON field names (fixes
106
+ issue where -X option could produce invalid XML when reading JSON with the
107
+ -struct option)
108
+ - Fixed decoding of ShutterCount for Canon G5X-ii CR3 files
109
+
10
110
  Jan. 31, 2024 - Version 12.76 (production release)
11
111
 
12
112
  - Properly implement patch of 12.45 to avoid duplicating raw data when writing
@@ -19,6 +119,7 @@ Jan. 30, 2024 - Version 12.75 (production release)
19
119
  - CORRUPTION WARNING: Fixed bug introduced in 12.45 which could result in
20
120
  corrupted Sony ARW images from some newer models when rewriting lossless
21
121
  compressed ARW images which were previously edited by 12.44 or earlier
122
+ (the corruption is repairable, but requires a special version of ExifTool)
22
123
  - Added ability to read C2PA JUMBF metadata from PDF and SVG files
23
124
  - Added ability to extract JUMBF metadata as a block
24
125
  - Added read support for C2PA (JUMBF-format) files
@@ -547,7 +648,7 @@ Oct. 13, 2022 - Version 12.48
547
648
  "Z" are actually in Zulu time -- a bit of a mess really)
548
649
  - Prevent dynamically-generated Unknown tags from being extracted when the
549
650
  -validate option is used without -u
550
- - Patched to better handle irregular timestamps in streaming GPS of NextBase
651
+ - Patched to better handle irregular timestamps in streaming GPS of Nextbase
551
652
  dashcam videos
552
653
  - Fixed incompatibility with Sigma Photo Pro which could result in Sigma Photo
553
654
  Pro corrupting an ExifTool-edited X3F image (the section length in the
@@ -1419,7 +1520,7 @@ Mar. 19, 2020 - Version 11.92
1419
1520
  - Added a new Nikon LensID (thanks Wolfgang Exler)
1420
1521
  - Decode a few new Leica tags (thanks Tim Gray)
1421
1522
  - Decode AccelerometerData from Samsung Gear 360 videos
1422
- - Fixed a couple of problems decoding timed GPS metadata from NextBase dashcam
1523
+ - Fixed a couple of problems decoding timed GPS metadata from Nextbase dashcam
1423
1524
  videos
1424
1525
  - Fixed problem where -X option could produce invalid XML when reading
1425
1526
  corrupted XMP
@@ -2308,7 +2409,7 @@ Oct. 16, 2018 - Version 11.14
2308
2409
 
2309
2410
  Oct. 9, 2018 - Version 11.13
2310
2411
 
2311
- - Decode GPS from NextBase 512G dashcam MOV videos (different than 512GW)
2412
+ - Decode GPS from Nextbase 512G dashcam MOV videos (different than 512GW)
2312
2413
  - Added a new Canon LensType (thanks LibRaw)
2313
2414
  - Minor improvements to verbose dump of streaming GPS metadata
2314
2415
  - Reverted change of version 10.71 which resulted in Windows not recognizing
@@ -2327,7 +2428,7 @@ Oct. 2, 2018 - Version 11.12
2327
2428
  - Added a new Sony/Minolta LensType (thanks LibRaw and Jos Roost)
2328
2429
  - Added a new Nikon LensID
2329
2430
  - Decode a few new Sony SRF2 tags (thanks LibRaw)
2330
- - Decode GPS from NextBase 512GW dashcam MOV videos
2431
+ - Decode GPS from Nextbase 512GW dashcam MOV videos
2331
2432
  - Validate MS-DOC FIB before extracting contained tags
2332
2433
  - Fixed bug extracting GPSSpeed for some dashcam models
2333
2434
 
data/bin/MANIFEST CHANGED
@@ -195,6 +195,7 @@ html/data_members.html
195
195
  html/exiftool_pod.html
196
196
  html/faq.html
197
197
  html/filename.html
198
+ html/geolocation.html
198
199
  html/geotag.html
199
200
  html/history.html
200
201
  html/htmldump.html
@@ -293,7 +294,27 @@ lib/Image/ExifTool/GE.pm
293
294
  lib/Image/ExifTool/GIF.pm
294
295
  lib/Image/ExifTool/GIMP.pm
295
296
  lib/Image/ExifTool/GPS.pm
297
+ lib/Image/ExifTool/GeoLang/cs.pm
298
+ lib/Image/ExifTool/GeoLang/de.pm
299
+ lib/Image/ExifTool/GeoLang/en_ca.pm
300
+ lib/Image/ExifTool/GeoLang/en_gb.pm
301
+ lib/Image/ExifTool/GeoLang/es.pm
302
+ lib/Image/ExifTool/GeoLang/fi.pm
303
+ lib/Image/ExifTool/GeoLang/fr.pm
304
+ lib/Image/ExifTool/GeoLang/it.pm
305
+ lib/Image/ExifTool/GeoLang/ja.pm
306
+ lib/Image/ExifTool/GeoLang/ko.pm
307
+ lib/Image/ExifTool/GeoLang/nl.pm
308
+ lib/Image/ExifTool/GeoLang/pl.pm
309
+ lib/Image/ExifTool/GeoLang/ru.pm
310
+ lib/Image/ExifTool/GeoLang/sk.pm
311
+ lib/Image/ExifTool/GeoLang/sv.pm
312
+ lib/Image/ExifTool/GeoLang/tr.pm
313
+ lib/Image/ExifTool/GeoLang/zh_cn.pm
314
+ lib/Image/ExifTool/GeoLang/zh_tw.pm
296
315
  lib/Image/ExifTool/GeoTiff.pm
316
+ lib/Image/ExifTool/Geolocation.dat
317
+ lib/Image/ExifTool/Geolocation.pm
297
318
  lib/Image/ExifTool/Geotag.pm
298
319
  lib/Image/ExifTool/GoPro.pm
299
320
  lib/Image/ExifTool/H264.pm
@@ -599,6 +620,14 @@ t/GeoTiff.t
599
620
  t/GeoTiff_2.out
600
621
  t/GeoTiff_3.out
601
622
  t/GeoTiff_4.out
623
+ t/Geolocation.t
624
+ t/Geolocation_2.out
625
+ t/Geolocation_3.out
626
+ t/Geolocation_4.out
627
+ t/Geolocation_5.out
628
+ t/Geolocation_6.out
629
+ t/Geolocation_7.out
630
+ t/Geolocation_8.out
602
631
  t/Geotag.t
603
632
  t/Geotag_10.out
604
633
  t/Geotag_11.out
data/bin/META.json CHANGED
@@ -50,5 +50,5 @@
50
50
  }
51
51
  },
52
52
  "release_status" : "stable",
53
- "version" : "12.76"
53
+ "version" : "12.81"
54
54
  }
data/bin/META.yml CHANGED
@@ -31,4 +31,4 @@ recommends:
31
31
  Time::HiRes: 0
32
32
  requires:
33
33
  perl: 5.004
34
- version: 12.76
34
+ version: 12.81
data/bin/README CHANGED
@@ -20,7 +20,7 @@ supported by ExifTool (r = read, w = write, c = create):
20
20
  3GP r/w | DSS r | JP2 r/w | ODT r | RWL r/w
21
21
  7Z r | DV r | JPEG r/w | OFR r | RWZ r
22
22
  A r | DVB r/w | JSON r | OGG r | RM r
23
- AA r | DVR-MS r | JXL r | OGV r | SEQ r
23
+ AA r | DVR-MS r | JXL r/w | OGV r | SEQ r
24
24
  AAC r | DYLIB r | K25 r | ONP r | SKETCH r
25
25
  AAE r | EIP r | KDC r | OPUS r | SO r
26
26
  AAX r/w | EPS r/w | KEY r | ORF r/w | SR2 r/w
@@ -109,8 +109,8 @@ your home directory, then you would type the following commands in a
109
109
  terminal window to extract and run ExifTool:
110
110
 
111
111
  cd ~/Desktop
112
- gzip -dc Image-ExifTool-12.76.tar.gz | tar -xf -
113
- cd Image-ExifTool-12.76
112
+ gzip -dc Image-ExifTool-12.81.tar.gz | tar -xf -
113
+ cd Image-ExifTool-12.81
114
114
  ./exiftool t/images/ExifTool.jpg
115
115
 
116
116
  Note: These commands extract meta information from one of the test images.
@@ -238,6 +238,7 @@ information:
238
238
  html/ExifTool.html - API documentation
239
239
  html/TagNames/index.html - Tag name documentation
240
240
  html/geotag.html - Geotag feature
241
+ html/geolocation.html - Geolocation feature
241
242
  html/faq.html - Frequently asked questions
242
243
  html/filename.html - Renaming/moving files
243
244
  html/metafiles.html - Working with metadata sidecar files
@@ -41,7 +41,8 @@
41
41
  # type tags to ACDSee regions.
42
42
  # MPRegion2ACDSeeRegion : Converts a Microsoft RegionInfoMP
43
43
  # IPTCRegion2ACDSeeRegion : Converts an IPTC ImageRegion
44
- # MWGRegion2ACDSeeRegion : Converts a MWG RegionInfo
44
+ # MWGRegion2ACDSeeRegion : Converts from a MWG RegionInfo
45
+ # ACDSeeRegion2MWGRegion : Converts to a MWG RegionInfo
45
46
  #
46
47
  # Usage: To set individual tags
47
48
  # exiftool -config acdsee.config -ACDSEETAG=VALUE FILE ...
@@ -52,6 +53,8 @@
52
53
  # exiftool -config acdsee.config "-RegionInfoACDSee<IPTCRegion2ACDSeeRegion" File ...
53
54
  # To convert MWG Regions to ACDSee regions
54
55
  # exiftool -config acdsee.config "-RegionInfoACDSee<MWGRegion2ACDSeeRegion" File ...
56
+ # To convert ACDSee Regions to MWG regions
57
+ # exiftool -config acdsee.config "-RegionInfo<ACDSeeRegion2MWGRegion" File ...
55
58
  #
56
59
  # Requires: ExifTool version 10.28 or later
57
60
  #
@@ -64,45 +67,12 @@
64
67
  # "RegionInfoACDSeeAppliedToDimensions*" -> "ACDSeeRegionAppliedToDimensions*"
65
68
  # "RegionInfoACDSeeRegionList* -> "ACDSeeRegion*"
66
69
  # 2022/10/03 - PH Set group name properly to XMP-acdsee-rs
70
+ # 2024/03/19 - PH Moved XMP-acdsee-rs tags into the standard distribution,
71
+ # and added ACDSeeRegion2MWGRegion conversion
67
72
  #------------------------------------------------------------------------------
68
73
  use Data::Dumper;
69
74
 
70
- my %sACDSeeDimensions = (
71
- STRUCT_NAME => 'ACDSee Dimensions',
72
- NAMESPACE => {'acdsee-stDim' => 'http://ns.acdsee.com/sType/Dimensions#'},
73
- 'w' => { Writable => 'real' },
74
- 'h' => { Writable => 'real' },
75
- 'unit' => { },
76
- );
77
-
78
- my %sACDSeeArea = (
79
- STRUCT_NAME => 'ACDSee Area',
80
- NAMESPACE => { 'acdsee-stArea' => 'http://ns.acdsee.com/sType/Area#' },
81
- 'x' => { Writable => 'real' },
82
- 'y' => { Writable => 'real' },
83
- w => { Writable => 'real' },
84
- h => { Writable => 'real' },
85
- );
86
-
87
- my %sACDSeeRegionStruct = (
88
- STRUCT_NAME => 'ACDSee Regions',
89
- NAMESPACE => { 'acdsee-rs' => 'http://ns.acdsee.com/regions/' },
90
- ALGArea => { Struct => \%sACDSeeArea },
91
- DLYArea => { Struct => \%sACDSeeArea },
92
- Name => { },
93
- NameAssignType => { },
94
- Type => { },
95
- );
96
-
97
75
  %Image::ExifTool::UserDefined = (
98
- # new XMP namespaces for ACDSee regions
99
- 'Image::ExifTool::XMP::Main' => {
100
- 'acdsee-rs' => { # <-- must be the same as the NAMESPACE prefix
101
- SubDirectory => {
102
- TagTable => 'Image::ExifTool::UserDefined::ACDSeeRegions'
103
- },
104
- },
105
- },
106
76
  'Image::ExifTool::Composite' => {
107
77
  # create an ACDSee RegionInfo structure from a Microsoft RegionInfoMP structure
108
78
  MPRegion2ACDSeeRegion => {
@@ -176,7 +146,7 @@ my %sACDSeeRegionStruct = (
176
146
  },
177
147
  },
178
148
 
179
- # create an MWG RegionInfo structure from an IPTC ImageRegion list
149
+ # create an ACDSee RegionInfo structure from an MWG RegionInfo structure
180
150
  MWGRegion2ACDSeeRegion => {
181
151
  Require => {
182
152
  0 => 'RegionInfo',
@@ -207,29 +177,39 @@ my %sACDSeeRegionStruct = (
207
177
  }
208
178
  },
209
179
  },
210
- ####
211
- },
212
- );
213
180
 
214
- %Image::ExifTool::UserDefined::ACDSeeRegions = (
215
- GROUPS => { 0 => 'XMP', 1 => 'XMP-acdsee-rs', 2 => 'Image' },
216
- NAMESPACE => { 'acdsee-rs' => 'http://ns.acdsee.com/regions/' },
217
- WRITABLE => 'string', # (default to string-type tags)
218
- Regions => {
219
- Name => 'RegionInfoACDSee',
220
- FlatName => 'ACDSee',
221
- # the "Struct" entry defines the structure fields
222
- Struct => {
223
- # optional structure name (used for warning messages only)
224
- STRUCT_NAME => 'ACDSee RegionInfo',
225
- RegionList => {
226
- FlatName => 'Region',
227
- Struct => \%sACDSeeRegionStruct,
228
- List => 'Bag',
181
+ # create an MWG RegionInfo structure from an ACDSee RegionInfo
182
+ ACDSeeRegion2MWGRegion => {
183
+ Require => {
184
+ 0 => 'RegionInfoACDSee',
185
+ 1 => 'ImageWidth',
186
+ 2 => 'ImageHeight',
187
+ },
188
+ ValueConv => q{
189
+ my ($rgn, @newRgns);
190
+ my %newRgn;
191
+ foreach $rgn (@{$val[0]{RegionList}}) {
192
+ next unless $$rgn{Area} or defined $$rgn{Name};
193
+ my %newRgn;
194
+ if ($$rgn{DLYArea}) {
195
+ $newRgn{Area} = {
196
+ 'X' => $$rgn{DLYArea}{'X'},
197
+ 'Y' => $$rgn{DLYArea}{'Y'},
198
+ 'W' => $$rgn{DLYArea}{'W'},
199
+ 'H' => $$rgn{DLYArea}{'H'},
200
+ };
201
+ };
202
+ $newRgn{Name} = $$rgn{Name} if defined $$rgn{Name};
203
+ $newRgn{'Type'} = $$rgn{'Type'} if defined $$rgn{'Type'};
204
+ push @newRgns, \%newRgn;
205
+ }
206
+ return {
207
+ 'AppliedToDimensions' => $val[0]{'AppliedToDimensions'},
208
+ RegionList => \@newRgns,
209
+ }
229
210
  },
230
- AppliedToDimensions => {
231
- FlatName => 'RegionAppliedToDimensions',Struct => \%sACDSeeDimensions },
232
211
  },
212
+ ####
233
213
  },
234
214
  );
235
215
 
@@ -6,7 +6,8 @@
6
6
  # Notes: This example file shows how to define your own shortcuts and
7
7
  # add new EXIF, IPTC, XMP, PNG, MIE and Composite tags, as well
8
8
  # as how to specify preferred lenses for the LensID tag, and
9
- # define new file types and default ExifTool option values.
9
+ # define new file types and default ExifTool API options and
10
+ # command-line arguments.
10
11
  #
11
12
  # Note that unknown tags may be extracted even if they aren't
12
13
  # defined, but tags must be defined to be written. Also note
@@ -345,7 +346,7 @@ use Image::ExifTool::MIE;
345
346
  use Image::ExifTool::QuickTime;
346
347
  $Image::ExifTool::QuickTime::Keys{PREFERRED} = 3;
347
348
 
348
- # Specify default ExifTool option values
349
+ # Specify default ExifTool API options
349
350
  # (see the Options function documentation for available options)
350
351
  %Image::ExifTool::UserDefined::Options = (
351
352
  CoordFormat => '%.6f', # change default GPS coordinate format
@@ -354,5 +355,18 @@ $Image::ExifTool::QuickTime::Keys{PREFERRED} = 3;
354
355
  RequestAll => 3, # request additional tags not normally generated
355
356
  );
356
357
 
358
+ # Specify default exiftool command-line arguments
359
+ # - inserted before all other options except -config
360
+ # - applies to all -execute'd commands
361
+ @Image::ExifTool::UserDefined::Arguments = (
362
+ '-i', 'HIDDEN', # ignore hidden files by default (names beginning with ".")
363
+ );
364
+
365
+ # Add user-defined cities to the Geolocation lookup
366
+ @Image::ExifTool::UserDefined::Geolocation = (
367
+ # (city,region,country code,country,timezone,population,lat,lon)
368
+ ['Sinemorets','Burgas','BG','Bulgaria','Europe/Sofia',400,42.06115,27.97833],
369
+ );
370
+
357
371
  #------------------------------------------------------------------------------
358
372
  1; #end