exiftool_vendored 12.35.0 → 12.36.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -15,7 +15,7 @@ package Image::ExifTool::NikonCustom;
15
15
  use strict;
16
16
  use vars qw($VERSION);
17
17
 
18
- $VERSION = '1.17';
18
+ $VERSION = '1.18';
19
19
 
20
20
  my %offOn = ( 0 => 'Off', 1 => 'On' );
21
21
  my %onOff = ( 0 => 'On', 1 => 'Off' );
@@ -3358,6 +3358,8 @@ my %noYes = ( 0 => 'No', 1 => 'Yes' );
3358
3358
  47 => 'AF-Area Mode + AF-On (Auto Area AF)',
3359
3359
  49 => 'Sync Release (Master Only)',
3360
3360
  50 => 'Sync Release (Remote Only)',
3361
+ 58 => 'AF-Area Mode + AF-On (Group Area AF - HL)',
3362
+ 59 => 'AF-Area Mode + AF-On (Group Area AF - VL)',
3361
3363
  },
3362
3364
  },
3363
3365
  15.1 => { # CSf1-a
@@ -3401,6 +3403,8 @@ my %noYes = ( 0 => 'No', 1 => 'Yes' );
3401
3403
  47 => 'AF-Area Mode + AF-On (Auto Area AF)',
3402
3404
  49 => 'Sync Release (Master Only)',
3403
3405
  50 => 'Sync Release (Remote Only)',
3406
+ 58 => 'AF-Area Mode + AF-On (Group Area AF - HL)',
3407
+ 59 => 'AF-Area Mode + AF-On (Group Area AF - VL)',
3404
3408
  },
3405
3409
  },
3406
3410
  16.1 => { # CSf1-p
@@ -17,7 +17,7 @@ use strict;
17
17
  use vars qw($VERSION);
18
18
  use Image::ExifTool qw(:DataAccess :Utils);
19
19
 
20
- $VERSION = '1.04';
20
+ $VERSION = '1.05';
21
21
 
22
22
  sub ProcessNikonSettings($$$);
23
23
 
@@ -545,15 +545,7 @@ my %infoD6 = (
545
545
  %infoZ72,
546
546
  }],
547
547
  0x00e => { Name => 'MovieISOAutoControlManualMode',PrintConv => \%onOff }, # (D6/Z7_2)
548
- # 0x00f => [{ # this tag should reside here, but unable to confirm
549
- # Name => 'MovieISOAutoManualMode',
550
- # PrintConv => \%iSOAutoHiLimitD6,
551
- # %infoD6,
552
- # },{
553
- # Name => 'MovieISOAutoManualMode',
554
- # PrintConv => \%iSOAutoHiLimitZ7m2,
555
- # %infoZ72,
556
- # }],
548
+ 0x00f => { Name => 'MovieWhiteBalanceSameAsPhoto', PrintConv => \%yesNo }, # (D6/Z7_2)
557
549
  0x01d => [{ # CSa1 (D6)
558
550
  Name => 'AF-CPrioritySel',
559
551
  PrintConv => { # valid for cameras with 4 options for CS1, otherwise 1=Release, 2=Focus
@@ -978,6 +970,26 @@ my %infoD6 = (
978
970
  %infoZ72,
979
971
  }],
980
972
  0x074 => { Name => 'FlickAdvanceDirection', PrintConv => { 1 => 'Right to Left', 2 => 'Left to Right' } }, # CSf12-3 (D6)
973
+ 0x075 => { # Settings menu # (D6,Z7_2)
974
+ Name => 'HDMIOutputResolution',
975
+ PrintConv => {
976
+ 1 => 'Auto',
977
+ 2 => '2160p',
978
+ 3 => '1080p',
979
+ 4 => '1080i)',
980
+ 5 => '720p',
981
+ 6 => '576p',
982
+ 7 => '480p',
983
+ },
984
+ },
985
+ 0x077 => { # Settings menu # (D6,Z7_2)
986
+ Name => 'HDMIOutputRange',
987
+ PrintConv => {
988
+ 1 => 'Auto',
989
+ 2 => 'Limit',
990
+ 3 => 'Full',
991
+ },
992
+ },
981
993
  0x080 => [{
982
994
  Name => 'RemoteFuncButton',
983
995
  PrintConv => {
@@ -1051,6 +1063,7 @@ my %infoD6 = (
1051
1063
  8 => '180',
1052
1064
  },
1053
1065
  },
1066
+ 0x092 => { Name => 'HDMIExternalRecorder', PrintConv => \%onOff }, # Settings Menu/HDMI/Advanced entry (D6 & Z7_2)
1054
1067
  0x093 => { # CSa3-a (D6), CSa3 (Z7_2)
1055
1068
  Name => 'BlockShotAFResponse',
1056
1069
  PrintConv => {
@@ -1549,6 +1562,28 @@ my %infoD6 = (
1549
1562
  0x0fb => { Name => 'SecondarySlotFunction', PrintConv => \%tagSecondarySlotFunction }, # (D6)
1550
1563
  0x0fc => { Name => 'SilentPhotography', PrintConv => \%onOff }, # (D6,Z7_2) # tag is associated with Silent LiveView Photography (as distinguisehed from Silent Interval or Silent Focus Shift)
1551
1564
  0x0fd => { Name => 'ExtendedShutterSpeeds', PrintConv => \%onOff }, # CSd7 (D6), CSd6 (Z7_2)
1565
+ 0x102 => { # (Z7_2)
1566
+ Name => 'HDMIBitDepth',
1567
+ RawConv => '$$self{HDMIBitDepth} = $val',
1568
+ PrintConv => {
1569
+ 1 => '8 Bit',
1570
+ 2 => '10 Bit',
1571
+ },
1572
+ },
1573
+ 0x103 => { # (Z7_2)
1574
+ Name => 'HDMIOutputHDR',
1575
+ Condition => '$$self{HDMIBitDepth} == 2', # HDR(HLC) output option only available only for 10 bit
1576
+ RawConv => '$$self{HDMIOutputHDR} = $val',
1577
+ PrintConv => {
1578
+ 2 => 'On', # unusual decode perhaps due to sharing sub-menu with tag HDMIOutputN-Log?
1579
+ 3 => 'Off',
1580
+ },
1581
+ },
1582
+ 0x104 => { # valid for 10 bit with either N-Log or HDR/HLG selected (Z7_2)
1583
+ Name => 'HDMIViewAssist',
1584
+ Condition => '$$self{HDMIBitDepth} == 2',
1585
+ PrintConv => \%onOff
1586
+ },
1552
1587
  0x109 => { # (D6,Z7_2)
1553
1588
  Name => 'BracketSet',
1554
1589
  RawConv => '$$self{BracketSet} = $val',
@@ -1640,6 +1675,11 @@ my %infoD6 = (
1640
1675
  8 => 'Off, Low, Normal, High, Extra High',
1641
1676
  },
1642
1677
  },
1678
+ 0x10e => { # (D6/Z7_2)
1679
+ Name => 'MonitorBrightness',
1680
+ # settings: -5 to +5
1681
+ ValueConv => '$val - 6',
1682
+ },
1643
1683
  0x116 => { Name => 'GroupAreaC1', PrintConv =>\%groupAreaCustom }, # CSa10-a (new with D6) # (D6)
1644
1684
  0x117 => { Name => 'AutoAreaAFStartingPoint', PrintConv => \%enableDisable }, # CSa12 (D6)
1645
1685
  0x118 => { Name => 'FocusPointPersistence', PrintConv => { 1 => 'Auto', 2 => 'Off' } }, # CSa13 (new with D6) # (D6)
@@ -1823,8 +1863,9 @@ my %infoD6 = (
1823
1863
  },
1824
1864
  },
1825
1865
  0x151 => { Name => 'LensFunc2Button', PrintConv => \%lensFuncButtonZ7m2 }, # CSf2-h (Z7_2)
1866
+ #0x153 => { Name => 'ViewfinderBrightness', } #(Z7_2) # commented out to reduce output volume. Range [-5,+5]. PrintConv matches MonitorBrightness.
1826
1867
  0x158 => { Name => 'USBPowerDelivery', PrintConv => \%enableDisable }, # (Z7_2)
1827
- 0x15b => { Name => 'GroupAreaC2', PrintConv =>\%groupAreaCustom }, # CSa10-b (new with D6) # (D6)
1868
+ 0x159 => { Name => 'EnergySavingMode', PrintConv =>\%onOff }, # (Z7_2)
1828
1869
  0x15c => { Name => 'BracketingBurstOptions',PrintConv => \%enableDisable }, # CSe9 (D6)
1829
1870
  # 0x15d => CSf3-j-2 (D6) 'Same as Multi-Selector with Info(U/D) & Playback(R/L)' and 'Same as Multi-Selector with Info(R/L) & Playback(U/D)' (skipped to reduce volume of output)
1830
1871
  0x15e => { Name => 'PrimarySlot', PrintConv => { 1 => 'CFexpress/XQD Card', 2 => 'SD Card' } }, # (Z7_2)
@@ -1900,10 +1941,12 @@ my %infoD6 = (
1900
1941
  13 => 'None',
1901
1942
  },
1902
1943
  },
1944
+ #0x168 => { Name => 'ControlPanelBrightness', # (Z7_2) #commented to reduce output volume
1903
1945
  0x169 => { Name => 'LimitAF-AreaModeSelAutoPeople', PrintConv => \%limitNolimit, Unknown => 1 }, # CSa7-h (Z7_2)
1904
1946
  0x16a => { Name => 'LimitAF-AreaModeSelAutoAnimals', PrintConv => \%limitNolimit, Unknown => 1 }, # CSa7-h (Z7_2)
1905
1947
  0x16b => { Name => 'LimitAF-AreaModeSelWideLPeople', PrintConv => \%limitNolimit, Unknown => 1 }, # CSa7-e (Z7_2)
1906
1948
  0x16c => { Name => 'LimitAF-AreaModeSelWideLAnimals', PrintConv => \%limitNolimit, Unknown => 1 }, # CSa7-f (Z7_2)
1949
+ 0x16d => { Name => 'SaveFocus', PrintConv => \%onOff }, # (Z7_2)
1907
1950
  0x16e => { # (Z7_2)
1908
1951
  Name => 'AFAreaMode',
1909
1952
  RawConv => '$$self{AFAreaMode} = $val',
@@ -1919,6 +1962,19 @@ my %infoD6 = (
1919
1962
  10 => 'Auto (Animals)',
1920
1963
  },
1921
1964
  },
1965
+ 0x16f => { # (Z7_2)
1966
+ Name => 'MovieAFAreaMode',
1967
+ PrintConv => {
1968
+ 1 => 'Single-point',
1969
+ 2 => 'Wide (S)',
1970
+ 3 => 'Wide (L)',
1971
+ 4 => 'Wide (L-people)',
1972
+ 5 => 'Wide (L-animals)',
1973
+ 6 => 'Auto',
1974
+ 7 => 'Auto (People)',
1975
+ 8 => 'Auto (Animals)',
1976
+ },
1977
+ },
1922
1978
  0x170 => { Name => 'PreferSubSelectorCenter', PrintConv => \%offOn }, # CSf13 (D6 firmware v1.2.0)
1923
1979
  0x171 => { # CSb8 (D6 firmware v1.3.0)
1924
1980
  Name => 'KeepExposureWithTeleconverter',
@@ -15,7 +15,7 @@ use vars qw($VERSION @ISA $makeMissing);
15
15
  use Image::ExifTool qw(:Utils :Vars);
16
16
  use Image::ExifTool::XMP;
17
17
 
18
- $VERSION = '1.31';
18
+ $VERSION = '1.32';
19
19
  @ISA = qw(Exporter);
20
20
 
21
21
  # set this to a language code to generate Lang module with 'MISSING' entries
@@ -58,6 +58,12 @@ my %translateLang = (
58
58
  my $numbersFirst = 1; # set to -1 to sort numbers last, or 2 to put negative numbers last
59
59
  my $caseInsensitive; # used internally by sort routine
60
60
 
61
+ # write groups that don't represent real family 1 group names
62
+ my %fakeWriteGroup = (
63
+ Comment => 1, # (JPEG Comment)
64
+ colr => 1, # (Jpeg2000 'colr' box)
65
+ );
66
+
61
67
  #------------------------------------------------------------------------------
62
68
  # Utility to print tag information database as an XML list
63
69
  # Inputs: 0) output file name (undef to send to console),
@@ -178,9 +184,8 @@ PTILoop: for ($index=0; $index<@infoArray; ++$index) {
178
184
  }
179
185
  my @groups = $et->GetGroup($tagInfo);
180
186
  my $writeGroup = $$tagInfo{WriteGroup} || $$table{WRITE_GROUP};
181
- if ($writeGroup and $writeGroup ne 'Comment') {
182
- $groups[1] = $writeGroup; # use common write group for group 1
183
- }
187
+ # use common write group for group 1 (unless fake)
188
+ $groups[1] = $writeGroup if $writeGroup and not $fakeWriteGroup{$writeGroup};
184
189
  # add group names if different from table defaults
185
190
  my $grp = '';
186
191
  for ($fam=0; $fam<3; ++$fam) {