exiftool_vendored 11.99.0 → 12.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. checksums.yaml +4 -4
  2. data/bin/Changes +201 -2
  3. data/bin/MANIFEST +8 -0
  4. data/bin/META.json +1 -1
  5. data/bin/META.yml +1 -1
  6. data/bin/README +43 -42
  7. data/bin/exiftool +172 -99
  8. data/bin/lib/Image/ExifTool.pm +170 -117
  9. data/bin/lib/Image/ExifTool.pod +132 -97
  10. data/bin/lib/Image/ExifTool/AIFF.pm +2 -2
  11. data/bin/lib/Image/ExifTool/APE.pm +2 -2
  12. data/bin/lib/Image/ExifTool/BuildTagLookup.pm +21 -10
  13. data/bin/lib/Image/ExifTool/Canon.pm +202 -13
  14. data/bin/lib/Image/ExifTool/CanonCustom.pm +82 -16
  15. data/bin/lib/Image/ExifTool/DPX.pm +56 -2
  16. data/bin/lib/Image/ExifTool/DarwinCore.pm +22 -3
  17. data/bin/lib/Image/ExifTool/EXE.pm +8 -5
  18. data/bin/lib/Image/ExifTool/Exif.pm +15 -6
  19. data/bin/lib/Image/ExifTool/Font.pm +9 -2
  20. data/bin/lib/Image/ExifTool/GIF.pm +6 -1
  21. data/bin/lib/Image/ExifTool/GeoTiff.pm +2 -0
  22. data/bin/lib/Image/ExifTool/Geotag.pm +2 -2
  23. data/bin/lib/Image/ExifTool/GoPro.pm +48 -22
  24. data/bin/lib/Image/ExifTool/H264.pm +1 -1
  25. data/bin/lib/Image/ExifTool/ID3.pm +86 -12
  26. data/bin/lib/Image/ExifTool/IPTC.pm +1 -0
  27. data/bin/lib/Image/ExifTool/Import.pm +12 -9
  28. data/bin/lib/Image/ExifTool/JSON.pm +27 -4
  29. data/bin/lib/Image/ExifTool/Lang/de.pm +3 -1
  30. data/bin/lib/Image/ExifTool/Lang/es.pm +1 -1
  31. data/bin/lib/Image/ExifTool/M2TS.pm +1 -1
  32. data/bin/lib/Image/ExifTool/MPF.pm +2 -2
  33. data/bin/lib/Image/ExifTool/MacOS.pm +154 -38
  34. data/bin/lib/Image/ExifTool/Matroska.pm +3 -1
  35. data/bin/lib/Image/ExifTool/Minolta.pm +7 -2
  36. data/bin/lib/Image/ExifTool/Nikon.pm +143 -17
  37. data/bin/lib/Image/ExifTool/Olympus.pm +40 -17
  38. data/bin/lib/Image/ExifTool/PNG.pm +14 -3
  39. data/bin/lib/Image/ExifTool/PPM.pm +5 -5
  40. data/bin/lib/Image/ExifTool/Panasonic.pm +148 -14
  41. data/bin/lib/Image/ExifTool/PanasonicRaw.pm +34 -0
  42. data/bin/lib/Image/ExifTool/Parrot.pm +2 -1
  43. data/bin/lib/Image/ExifTool/Pentax.pm +11 -3
  44. data/bin/lib/Image/ExifTool/Photoshop.pm +2 -1
  45. data/bin/lib/Image/ExifTool/QuickTime.pm +240 -37
  46. data/bin/lib/Image/ExifTool/QuickTimeStream.pl +419 -60
  47. data/bin/lib/Image/ExifTool/README +25 -21
  48. data/bin/lib/Image/ExifTool/RSRC.pm +17 -11
  49. data/bin/lib/Image/ExifTool/Radiance.pm +7 -2
  50. data/bin/lib/Image/ExifTool/Ricoh.pm +19 -1
  51. data/bin/lib/Image/ExifTool/Shift.pl +1 -0
  52. data/bin/lib/Image/ExifTool/SigmaRaw.pm +40 -33
  53. data/bin/lib/Image/ExifTool/Sony.pm +423 -39
  54. data/bin/lib/Image/ExifTool/Stim.pm +2 -2
  55. data/bin/lib/Image/ExifTool/TagLookup.pm +5798 -5675
  56. data/bin/lib/Image/ExifTool/TagNames.pod +575 -100
  57. data/bin/lib/Image/ExifTool/Validate.pm +4 -4
  58. data/bin/lib/Image/ExifTool/WriteExif.pl +1 -0
  59. data/bin/lib/Image/ExifTool/WriteQuickTime.pl +30 -21
  60. data/bin/lib/Image/ExifTool/Writer.pl +49 -24
  61. data/bin/lib/Image/ExifTool/XMP.pm +99 -17
  62. data/bin/lib/Image/ExifTool/XMP2.pl +1 -0
  63. data/bin/lib/Image/ExifTool/XMPStruct.pl +3 -1
  64. data/bin/lib/Image/ExifTool/ZISRAW.pm +123 -0
  65. data/bin/perl-Image-ExifTool.spec +42 -41
  66. data/lib/exiftool_vendored/version.rb +1 -1
  67. metadata +9 -8
@@ -1697,6 +1697,7 @@ my %sSubVersion = (
1697
1697
  InitialViewPitchDegrees => { Writable => 'real' },
1698
1698
  InitialViewRollDegrees => { Writable => 'real' },
1699
1699
  InitialHorizontalFOVDegrees => { Writable => 'real' },
1700
+ InitialVerticalFOVDegrees => { Writable => 'real' },
1700
1701
  FirstPhotoDate => { %dateTimeInfo, Groups => { 2 => 'Time' } },
1701
1702
  LastPhotoDate => { %dateTimeInfo, Groups => { 2 => 'Time' } },
1702
1703
  SourcePhotosCount => { Writable => 'integer' },
@@ -519,6 +519,7 @@ sub AddNewStruct($$$$$$)
519
519
  next unless $$fieldInfo{List};
520
520
  my $i = 0;
521
521
  my ($item, $p);
522
+ my $level = scalar(() = ($propPath =~ / \d+/g));
522
523
  # loop through all list items (note: can't yet write multi-dimensional lists)
523
524
  foreach $item (@{$val}) {
524
525
  if ($i) {
@@ -533,7 +534,8 @@ sub AddNewStruct($$$$$$)
533
534
  if (ref $item eq 'HASH') {
534
535
  my $subStruct = $$fieldInfo{Struct} or next;
535
536
  AddNewStruct($et, $tagInfo, $capture, $p, $item, $subStruct) or next;
536
- } elsif (length $item) { # don't write empty items in list
537
+ # don't write empty items in upper-level list
538
+ } elsif (length $item or (defined $item and $level == 1)) {
537
539
  AddNewTag($et, $fieldInfo, $capture, $p, \$item, \%langIdx);
538
540
  $addedTag = 1;
539
541
  }
@@ -0,0 +1,123 @@
1
+ #------------------------------------------------------------------------------
2
+ # File: ZISRAW.pm
3
+ #
4
+ # Description: Read ZISRAW (CZI) meta information
5
+ #
6
+ # Revisions: 2020-08-07 - P. Harvey Created
7
+ #
8
+ # References: 1) https://www.zeiss.com/microscopy/us/products/microscope-software/zen/czi.html
9
+ #------------------------------------------------------------------------------
10
+
11
+ package Image::ExifTool::ZISRAW;
12
+
13
+ use strict;
14
+ use vars qw($VERSION);
15
+ use Image::ExifTool qw(:DataAccess :Utils);
16
+
17
+ $VERSION = '1.00';
18
+
19
+ %Image::ExifTool::ZISRAW::Main = (
20
+ PROCESS_PROC => \&Image::ExifTool::ProcessBinaryData,
21
+ GROUPS => { 0 => 'File', 1 => 'File', 2 => 'Image' },
22
+ NOTES => q{
23
+ As well as the header information listed below, ExifTool also extracts the
24
+ top-level XML-based metadata from Zeiss Integrated Software RAW (ZISRAW) CZI
25
+ files.
26
+ },
27
+ 0x20 => {
28
+ Name => 'ZISRAWVersion',
29
+ Format => 'int32u[2]',
30
+ PrintConv => '$val =~ tr/ /./; $val',
31
+ },
32
+ 0x30 => {
33
+ Name => 'PrimaryFileGUID',
34
+ Format => 'undef[16]',
35
+ ValueConv => 'unpack("H*",$val)',
36
+ },
37
+ 0x40 => {
38
+ Name => 'FileGUID',
39
+ Format => 'undef[16]',
40
+ ValueConv => 'unpack("H*",$val)',
41
+ },
42
+ );
43
+
44
+ #------------------------------------------------------------------------------
45
+ # Extract metadata from a ZISRAW (CZI) image
46
+ # Inputs: 0) ExifTool object reference, 1) dirInfo reference
47
+ # Returns: 1 on success, 0 if this wasn't a valid CZI file
48
+ sub ProcessCZI($$)
49
+ {
50
+ my ($et, $dirInfo) = @_;
51
+ my $raf = $$dirInfo{RAF};
52
+ my ($buff, $tagTablePtr);
53
+
54
+ # verify this is a valid CZI file
55
+ return 0 unless $raf->Read($buff, 100) == 100;
56
+ return 0 unless $buff =~ /^ZISRAWFILE\0{6}/;
57
+ $et->SetFileType();
58
+ SetByteOrder('II');
59
+ my %dirInfo = (
60
+ DataPt => \$buff,
61
+ DirStart => 0,
62
+ DirLen => length($buff),
63
+ );
64
+ $tagTablePtr = GetTagTable('Image::ExifTool::ZISRAW::Main');
65
+ $et->ProcessDirectory(\%dirInfo, $tagTablePtr);
66
+
67
+ # read the metadata section
68
+ my $pos = Get64u(\$buff, 92) or return 1;
69
+ $raf->Seek($pos, 0) or $et->Warn('Error seeking to metadata'), return 0;
70
+ $raf->Read($buff, 288) == 288 or $et->Warn('Error reading metadata header'), return 0;
71
+ $buff =~ /^ZISRAWMETADATA\0\0/ or $et->Warn('Invalid metadata header'), return 0;
72
+ my $len = Get32u(\$buff, 32);
73
+ $len < 200000000 or $et->Warn('Metadata section too large. Ignoring'), return 0;
74
+ $raf->Read($buff, $len) or $et->Warn('Error reading XML metadata'), return 0;
75
+ $et->FoundTag('XML', $buff); # extract as a block
76
+ $tagTablePtr = GetTagTable('Image::ExifTool::XMP::XML');
77
+ $dirInfo{DirLen} = length $buff;
78
+ # shorten tag names somewhat by removing 'ImageDocumentMetadata' prefix from all
79
+ $$et{XmpIgnoreProps} = [ 'ImageDocument', 'Metadata' ];
80
+ $et->ProcessDirectory(\%dirInfo, $tagTablePtr);
81
+
82
+ return 1;
83
+ }
84
+
85
+ 1; # end
86
+
87
+ __END__
88
+
89
+ =head1 NAME
90
+
91
+ Image::ExifTool::ZISRAW - Read ZISRAW (CZI) meta information
92
+
93
+ =head1 SYNOPSIS
94
+
95
+ This module is used by Image::ExifTool
96
+
97
+ =head1 DESCRIPTION
98
+
99
+ This module contains definitions required by Image::ExifTool to read
100
+ metadata from Zeiss Integrated Software RAW (ZISRAW) CZI files.
101
+
102
+ =head1 AUTHOR
103
+
104
+ Copyright 2003-2020, Phil Harvey (philharvey66 at gmail.com)
105
+
106
+ This library is free software; you can redistribute it and/or modify it
107
+ under the same terms as Perl itself.
108
+
109
+ =head1 REFERENCES
110
+
111
+ =over 4
112
+
113
+ =item L<https://www.zeiss.com/microscopy/us/products/microscope-software/zen/czi.html>
114
+
115
+ =back
116
+
117
+ =head1 SEE ALSO
118
+
119
+ L<Image::ExifTool::TagNames/ZISRAW Tags>,
120
+ L<Image::ExifTool(3pm)|Image::ExifTool>
121
+
122
+ =cut
123
+
@@ -1,6 +1,6 @@
1
1
  Summary: perl module for image data extraction
2
2
  Name: perl-Image-ExifTool
3
- Version: 11.99
3
+ Version: 12.11
4
4
  Release: 1
5
5
  License: Artistic/GPL
6
6
  Group: Development/Libraries/Perl
@@ -22,46 +22,47 @@ supported by ExifTool (r = read, w = write, c = create):
22
22
 
23
23
  File Types
24
24
  ------------+-------------+-------------+-------------+------------
25
- 3FR r | DR4 r/w/c | ITC r | ODP r | RIFF r
26
- 3G2 r/w | DSS r | J2C r | ODS r | RSRC r
27
- 3GP r/w | DV r | JNG r/w | ODT r | RTF r
28
- A r | DVB r/w | JP2 r/w | OFR r | RW2 r/w
29
- AA r | DVR-MS r | JPEG r/w | OGG r | RWL r/w
30
- AAE r | DYLIB r | JSON r | OGV r | RWZ r
31
- AAX r/w | EIP r | K25 r | OPUS r | RM r
32
- ACR r | EPS r/w | KDC r | ORF r/w | SEQ r
33
- AFM r | EPUB r | KEY r | OTF r | SKETCH r
34
- AI r/w | ERF r/w | LA r | PAC r | SO r
35
- AIFF r | EXE r | LFP r | PAGES r | SR2 r/w
36
- APE r | EXIF r/w/c | LNK r | PBM r/w | SRF r
37
- ARQ r/w | EXR r | LRV r/w | PCD r | SRW r/w
38
- ARW r/w | EXV r/w/c | M2TS r | PCX r | SVG r
39
- ASF r | F4A/V r/w | M4A/V r/w | PDB r | SWF r
40
- AVI r | FFF r/w | MAX r | PDF r/w | THM r/w
41
- AVIF r/w | FITS r | MEF r/w | PEF r/w | TIFF r/w
42
- AZW r | FLA r | MIE r/w/c | PFA r | TORRENT r
43
- BMP r | FLAC r | MIFF r | PFB r | TTC r
44
- BPG r | FLIF r/w | MKA r | PFM r | TTF r
45
- BTF r | FLV r | MKS r | PGF r | TXT r
46
- CHM r | FPF r | MKV r | PGM r/w | VCF r
47
- COS r | FPX r | MNG r/w | PLIST r | VRD r/w/c
48
- CR2 r/w | GIF r/w | MOBI r | PICT r | VSD r
49
- CR3 r/w | GPR r/w | MODD r | PMP r | WAV r
50
- CRM r/w | GZ r | MOI r | PNG r/w | WDP r/w
51
- CRW r/w | HDP r/w | MOS r/w | PPM r/w | WEBP r
52
- CS1 r/w | HDR r | MOV r/w | PPT r | WEBM r
53
- CSV r | HEIC r/w | MP3 r | PPTX r | WMA r
54
- DCM r | HEIF r/w | MP4 r/w | PS r/w | WMV r
55
- DCP r/w | HTML r | MPC r | PSB r/w | WTV r
56
- DCR r | ICC r/w/c | MPG r | PSD r/w | WV r
57
- DFONT r | ICS r | MPO r/w | PSP r | X3F r/w
58
- DIVX r | IDML r | MQV r/w | QTIF r/w | XCF r
59
- DJVU r | IIQ r/w | MRW r/w | R3D r | XLS r
60
- DLL r | IND r/w | MXF r | RA r | XLSX r
61
- DNG r/w | INSP r/w | NEF r/w | RAF r/w | XMP r/w/c
62
- DOC r | INSV r | NRW r/w | RAM r | ZIP r
63
- DOCX r | INX r | NUMBERS r | RAR r |
64
- DPX r | ISO r | O r | RAW r/w |
25
+ 360 r/w | DPX r | ITC r | ODP r | RIFF r
26
+ 3FR r | DR4 r/w/c | J2C r | ODS r | RSRC r
27
+ 3G2 r/w | DSS r | JNG r/w | ODT r | RTF r
28
+ 3GP r/w | DV r | JP2 r/w | OFR r | RW2 r/w
29
+ A r | DVB r/w | JPEG r/w | OGG r | RWL r/w
30
+ AA r | DVR-MS r | JSON r | OGV r | RWZ r
31
+ AAE r | DYLIB r | K25 r | ONP r | RM r
32
+ AAX r/w | EIP r | KDC r | OPUS r | SEQ r
33
+ ACR r | EPS r/w | KEY r | ORF r/w | SKETCH r
34
+ AFM r | EPUB r | LA r | OTF r | SO r
35
+ AI r/w | ERF r/w | LFP r | PAC r | SR2 r/w
36
+ AIFF r | EXE r | LNK r | PAGES r | SRF r
37
+ APE r | EXIF r/w/c | LRV r/w | PBM r/w | SRW r/w
38
+ ARQ r/w | EXR r | M2TS r | PCD r | SVG r
39
+ ARW r/w | EXV r/w/c | M4A/V r/w | PCX r | SWF r
40
+ ASF r | F4A/V r/w | MACOS r | PDB r | THM r/w
41
+ AVI r | FFF r/w | MAX r | PDF r/w | TIFF r/w
42
+ AVIF r/w | FITS r | MEF r/w | PEF r/w | TORRENT r
43
+ AZW r | FLA r | MIE r/w/c | PFA r | TTC r
44
+ BMP r | FLAC r | MIFF r | PFB r | TTF r
45
+ BPG r | FLIF r/w | MKA r | PFM r | TXT r
46
+ BTF r | FLV r | MKS r | PGF r | VCF r
47
+ CHM r | FPF r | MKV r | PGM r/w | VRD r/w/c
48
+ COS r | FPX r | MNG r/w | PLIST r | VSD r
49
+ CR2 r/w | GIF r/w | MOBI r | PICT r | WAV r
50
+ CR3 r/w | GPR r/w | MODD r | PMP r | WDP r/w
51
+ CRM r/w | GZ r | MOI r | PNG r/w | WEBP r
52
+ CRW r/w | HDP r/w | MOS r/w | PPM r/w | WEBM r
53
+ CS1 r/w | HDR r | MOV r/w | PPT r | WMA r
54
+ CSV r | HEIC r/w | MP3 r | PPTX r | WMV r
55
+ CZI r | HEIF r/w | MP4 r/w | PS r/w | WTV r
56
+ DCM r | HTML r | MPC r | PSB r/w | WV r
57
+ DCP r/w | ICC r/w/c | MPG r | PSD r/w | X3F r/w
58
+ DCR r | ICS r | MPO r/w | PSP r | XCF r
59
+ DFONT r | IDML r | MQV r/w | QTIF r/w | XLS r
60
+ DIVX r | IIQ r/w | MRW r/w | R3D r | XLSX r
61
+ DJVU r | IND r/w | MXF r | RA r | XMP r/w/c
62
+ DLL r | INSP r/w | NEF r/w | RAF r/w | ZIP r
63
+ DNG r/w | INSV r | NRW r/w | RAM r |
64
+ DOC r | INX r | NUMBERS r | RAR r |
65
+ DOCX r | ISO r | O r | RAW r/w |
65
66
 
66
67
  Meta Information
67
68
  ----------------------+----------------------+---------------------
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ExiftoolVendored
4
- VERSION = Gem::Version.new('11.99.0')
4
+ VERSION = Gem::Version.new('12.11.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: 11.99.0
4
+ version: 12.11.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: 2020-05-12 00:00:00.000000000 Z
12
+ date: 2020-11-27 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: exiftool
@@ -127,16 +127,16 @@ dependencies:
127
127
  name: simplecov
128
128
  requirement: !ruby/object:Gem::Requirement
129
129
  requirements:
130
- - - ">="
130
+ - - "~>"
131
131
  - !ruby/object:Gem::Version
132
- version: '0'
132
+ version: 0.17.1
133
133
  type: :development
134
134
  prerelease: false
135
135
  version_requirements: !ruby/object:Gem::Requirement
136
136
  requirements:
137
- - - ">="
137
+ - - "~>"
138
138
  - !ruby/object:Gem::Version
139
- version: '0'
139
+ version: 0.17.1
140
140
  - !ruby/object:Gem::Dependency
141
141
  name: simplecov-console
142
142
  requirement: !ruby/object:Gem::Requirement
@@ -426,6 +426,7 @@ files:
426
426
  - bin/lib/Image/ExifTool/XMP2.pl
427
427
  - bin/lib/Image/ExifTool/XMPStruct.pl
428
428
  - bin/lib/Image/ExifTool/ZIP.pm
429
+ - bin/lib/Image/ExifTool/ZISRAW.pm
429
430
  - bin/lib/Image/ExifTool/iWork.pm
430
431
  - bin/perl-Image-ExifTool.spec
431
432
  - lib/exiftool_vendored.rb
@@ -443,14 +444,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
443
444
  requirements:
444
445
  - - ">="
445
446
  - !ruby/object:Gem::Version
446
- version: '0'
447
+ version: '2.4'
447
448
  required_rubygems_version: !ruby/object:Gem::Requirement
448
449
  requirements:
449
450
  - - ">="
450
451
  - !ruby/object:Gem::Version
451
452
  version: '0'
452
453
  requirements: []
453
- rubygems_version: 3.1.3
454
+ rubygems_version: 3.1.2
454
455
  signing_key:
455
456
  specification_version: 4
456
457
  summary: Vendored version of exiftool