line |
stmt |
bran |
cond |
sub |
pod |
time |
code |
1
|
|
|
|
|
|
|
#------------------------------------------------------------------------------ |
2
|
|
|
|
|
|
|
# File: Minolta.pm |
3
|
|
|
|
|
|
|
# |
4
|
|
|
|
|
|
|
# Description: Minolta EXIF maker notes tags |
5
|
|
|
|
|
|
|
# |
6
|
|
|
|
|
|
|
# Revisions: 04/06/2004 - P. Harvey Created |
7
|
|
|
|
|
|
|
# 09/09/2005 - P. Harvey Added ability to write MRW files |
8
|
|
|
|
|
|
|
# |
9
|
|
|
|
|
|
|
# References: 1) http://www.dalibor.cz/minolta/makernote.htm |
10
|
|
|
|
|
|
|
# 2) Jay Al-Saadi private communication (testing with A2) |
11
|
|
|
|
|
|
|
# 3) Shingo Noguchi, PhotoXP (http://www.daifukuya.com/photoxp/) |
12
|
|
|
|
|
|
|
# 5) http://www.cybercom.net/~dcoffin/dcraw/ |
13
|
|
|
|
|
|
|
# 6) Pedro Corte-Real private communication |
14
|
|
|
|
|
|
|
# 7) ExifTool forum post by bronek (http://www.cpanforum.com/posts/1118) |
15
|
|
|
|
|
|
|
# 8) http://www.chauveau-central.net/mrw-format/ |
16
|
|
|
|
|
|
|
# 9) CPAN Forum post by 'geve' (http://www.cpanforum.com/threads/2168) |
17
|
|
|
|
|
|
|
# 10) http://homepage3.nifty.com/kamisaka/makernote/makernote_km.htm |
18
|
|
|
|
|
|
|
# 11) http://www.dyxum.com/dforum/forum_posts.asp?TID=6371&PN=1 and |
19
|
|
|
|
|
|
|
# http://www.dyxum.com/dAdmin/lenses/MakerNoteList_Public.asp?stro=makr |
20
|
|
|
|
|
|
|
# http://dyxum.com/dforum/forum_posts.asp?TID=23435&PN=2 |
21
|
|
|
|
|
|
|
# 12) http://www.minolta-forum.de/forum/index.php?showtopic=14914 |
22
|
|
|
|
|
|
|
# 13) http://www.mhohner.de/minolta/lenses.php |
23
|
|
|
|
|
|
|
# 14) Jeffery Small private communication (tests with 7D) |
24
|
|
|
|
|
|
|
# 15) http://homepage3.nifty.com/kamisaka/makernote/makernote_sony.htm |
25
|
|
|
|
|
|
|
# 16) Thomas Kassner private communication |
26
|
|
|
|
|
|
|
# 17) Mladen Sever private communication |
27
|
|
|
|
|
|
|
# 18) Olaf Ulrich private communication |
28
|
|
|
|
|
|
|
# 19) Lukasz Stelmach private communication |
29
|
|
|
|
|
|
|
# 20) Igal Milchtaich private communication (A100 firmware 1.04) |
30
|
|
|
|
|
|
|
# 21) Jean-Michel Dubois private communication |
31
|
|
|
|
|
|
|
# 22) http://www.mi-fo.de/forum/index.php?act=attach&type=post&id=6024 |
32
|
|
|
|
|
|
|
# 23) Marcin Krol private communication |
33
|
|
|
|
|
|
|
# 24) http://cpanforum.com/threads/12291 |
34
|
|
|
|
|
|
|
# 26) https://exiftool.org/forum/index.php/topic,3521.0.html |
35
|
|
|
|
|
|
|
# 27) https://exiftool.org/forum/index.php/topic,3833.0.html |
36
|
|
|
|
|
|
|
# 28) Michael Reitinger private communication (RX100) |
37
|
|
|
|
|
|
|
# 29) https://exiftool.org/forum/index.php/topic,4086.0.html |
38
|
|
|
|
|
|
|
# IB) Iliah Borg private communication (LibRaw) |
39
|
|
|
|
|
|
|
# JD) Jens Duttke private communication |
40
|
|
|
|
|
|
|
# JR) Jos Roost private communication |
41
|
|
|
|
|
|
|
# NJ) Niels Kristian Bech Jensen private communication |
42
|
|
|
|
|
|
|
#------------------------------------------------------------------------------ |
43
|
|
|
|
|
|
|
|
44
|
|
|
|
|
|
|
package Image::ExifTool::Minolta; |
45
|
|
|
|
|
|
|
|
46
|
28
|
|
|
28
|
|
4043
|
use strict; |
|
28
|
|
|
|
|
59
|
|
|
28
|
|
|
|
|
951
|
|
47
|
28
|
|
|
|
|
2155
|
use vars qw($VERSION %minoltaLensTypes %minoltaTeleconverters %minoltaColorMode |
48
|
28
|
|
|
28
|
|
128
|
%sonyColorMode %minoltaSceneMode %afStatusInfo %metabonesID); |
|
28
|
|
|
|
|
60
|
|
49
|
28
|
|
|
28
|
|
150
|
use Image::ExifTool qw(:DataAccess :Utils); |
|
28
|
|
|
|
|
56
|
|
|
28
|
|
|
|
|
4713
|
|
50
|
28
|
|
|
28
|
|
1179
|
use Image::ExifTool::Exif; |
|
28
|
|
|
|
|
106
|
|
|
28
|
|
|
|
|
128972
|
|
51
|
|
|
|
|
|
|
|
52
|
|
|
|
|
|
|
$VERSION = '2.87'; |
53
|
|
|
|
|
|
|
|
54
|
|
|
|
|
|
|
# Full list of product codes for Sony-compatible Minolta lenses |
55
|
|
|
|
|
|
|
# (ref http://www.kb.sony.com/selfservice/documentLink.do?externalId=C1000570) |
56
|
|
|
|
|
|
|
# NOTE: Unfortunately, these product codes sometimes do not match the first 4 |
57
|
|
|
|
|
|
|
# digits of the lens ID |
58
|
|
|
|
|
|
|
# 2578 AF 16mm F2.8 FISH-EYE |
59
|
|
|
|
|
|
|
# 2579 AF 20mm F2.8 |
60
|
|
|
|
|
|
|
# 2641 AF 20mm F2.8 NEW |
61
|
|
|
|
|
|
|
# 2566 AF 24mm F2.8 |
62
|
|
|
|
|
|
|
# 2642 AF 24mm F2.8 NEW |
63
|
|
|
|
|
|
|
# 2596 AF 28mm F2 |
64
|
|
|
|
|
|
|
# 2668 AF 28mm F2 NEW |
65
|
|
|
|
|
|
|
# 2557 AF 28mm F2.8 |
66
|
|
|
|
|
|
|
# 2591 AF 35mm F1.4 G |
67
|
|
|
|
|
|
|
# 2666 AF 35mm F1.4 G NEW |
68
|
|
|
|
|
|
|
# 2597 AF 35mm F2 |
69
|
|
|
|
|
|
|
# 2667 AF 35mm F2 NEW |
70
|
|
|
|
|
|
|
# 2562 AF 50mm F1.4 |
71
|
|
|
|
|
|
|
# 2662 AF 50mm F1.4 NEW |
72
|
|
|
|
|
|
|
# 2550 AF 50mm F1.7 |
73
|
|
|
|
|
|
|
# 2613 AF 50mm F1.7 NEW |
74
|
|
|
|
|
|
|
# 2592 AF 85mm F1.4 |
75
|
|
|
|
|
|
|
# 2629 AF 85mm F1.4 G |
76
|
|
|
|
|
|
|
# 2677 AF 85mm F1.4 G (D) |
77
|
|
|
|
|
|
|
# 2689 AF 85mm F1.4 G (D) Limited |
78
|
|
|
|
|
|
|
# 2598 AF 100mm F2 |
79
|
|
|
|
|
|
|
# 2648 AF 100mm F2.8 SOFT |
80
|
|
|
|
|
|
|
# 2556 AF 135mm F2.8 |
81
|
|
|
|
|
|
|
# 2656 STF 135mm F2.8 [T4.5] |
82
|
|
|
|
|
|
|
# 2593 AF APO 20 0mm F2.8 |
83
|
|
|
|
|
|
|
# 2612 High Speed AF APO 200mm F2.8 G |
84
|
|
|
|
|
|
|
# 2563 AF APO 300mm F2.8 |
85
|
|
|
|
|
|
|
# 2608 High Speed AF APO 300mm F2.8 G |
86
|
|
|
|
|
|
|
# 2674 AF APO 300mm F2.8 G(D) SSM |
87
|
|
|
|
|
|
|
# 2640 AF APO 300mm F4 G |
88
|
|
|
|
|
|
|
# 2651 AF APO 400mm F4.5 G |
89
|
|
|
|
|
|
|
# 2572 AF REFLEX 500mm F8 |
90
|
|
|
|
|
|
|
# 2565 AF APO 600mm F4 |
91
|
|
|
|
|
|
|
# 2609 High Speed AF APO 600mm F4 G |
92
|
|
|
|
|
|
|
# 2564 AF MACRO 50mm F2.8 |
93
|
|
|
|
|
|
|
# 2638 AF MACRO 50mm F2.8 NEW |
94
|
|
|
|
|
|
|
# 2675 AF MACRO 50mm F2.8 (D) |
95
|
|
|
|
|
|
|
# 2646 AF MACRO 50mm F3.5 |
96
|
|
|
|
|
|
|
# 2581 AF MACRO 100mm F2.8 |
97
|
|
|
|
|
|
|
# 2639 AF MACRO 100mm F2.8 NEW |
98
|
|
|
|
|
|
|
# 2676 AF MACRO 100mm F2.8 (D) |
99
|
|
|
|
|
|
|
# 2658 AF APO TE LE MACRO 200mm F4 G |
100
|
|
|
|
|
|
|
# 2594 AF MACRO ZOOM 1x-3x F1.7-2.8 |
101
|
|
|
|
|
|
|
# 2695 AF 17-35mm F2.8-4 (D) |
102
|
|
|
|
|
|
|
# 2654 AF 17-35mm F3.5 G |
103
|
|
|
|
|
|
|
# 2657 AF 20-35mm F3.5-4.5 |
104
|
|
|
|
|
|
|
# 2558 AF 24-50mm F4 |
105
|
|
|
|
|
|
|
# 2632 AF 24-50mm F4 NEW |
106
|
|
|
|
|
|
|
# 2636 AF 24-85mm F3.5-4.5 |
107
|
|
|
|
|
|
|
# 2660 AF 24-85mm F3.5-4.5 NEW |
108
|
|
|
|
|
|
|
# 2672 AF 24-105mm F3.5-4.5 (D) |
109
|
|
|
|
|
|
|
# 2620 AF 28-70mm F2.8 G |
110
|
|
|
|
|
|
|
# 2696 AF 28-75mm F2.8 (D) |
111
|
|
|
|
|
|
|
# 2659 AF 28-80mm F3.5-5.6 |
112
|
|
|
|
|
|
|
# 2670 AF 28-80mm F3.5-5.6 II |
113
|
|
|
|
|
|
|
# 2683 AF 28-80mm F3.5-5.6 (D) |
114
|
|
|
|
|
|
|
# 2633 AF 28-80mm F4-5.6 |
115
|
|
|
|
|
|
|
# 2552 AF 28-85mm F3.5-4.5 |
116
|
|
|
|
|
|
|
# 2586 AF 28-85mm F3.5-4.5 NEW |
117
|
|
|
|
|
|
|
# 2692 AF 28-100mm F3.5-5.6 (D) |
118
|
|
|
|
|
|
|
# 2635 AF 28-105mm F3.5-4.5 |
119
|
|
|
|
|
|
|
# 2661 AF 28-105mm F3.5-4.5 NEW |
120
|
|
|
|
|
|
|
# 2553 AF 28-135mm F4-4.5 |
121
|
|
|
|
|
|
|
# 2551 AF 35-70mm F4 |
122
|
|
|
|
|
|
|
# 2643 AF 35-70mm F3.5-4.5 |
123
|
|
|
|
|
|
|
# 2652 AF 35-70mm F3.5-4.5 NEW |
124
|
|
|
|
|
|
|
# 2605 AF 35-80mm F4-5.6 |
125
|
|
|
|
|
|
|
# 2671 AF 35-80mm F4.5-5.6 II |
126
|
|
|
|
|
|
|
# 2554 AF 35-105mm F3.5-4.5 |
127
|
|
|
|
|
|
|
# 2585 AF 35-105mm F3.5-4.5 |
128
|
|
|
|
|
|
|
# 2682 AF APO 70-200mm F2.8 G (D) SSM |
129
|
|
|
|
|
|
|
# 2588 AF 70-210mm F4.5-5.6 |
130
|
|
|
|
|
|
|
# 2555 AF 70-210mm F4 |
131
|
|
|
|
|
|
|
# 2634 AF 70-210mm F4.5-5.6 NEW |
132
|
|
|
|
|
|
|
# 2669 AF 70-210mm F4.5-5.6 II |
133
|
|
|
|
|
|
|
# 2561 AF 75-300mm F4.5-5.6 |
134
|
|
|
|
|
|
|
# 2649 AF 75-300mm F4.5-5.6 NEW |
135
|
|
|
|
|
|
|
# 2665 AF 75-300mm F4.5-5.6 II |
136
|
|
|
|
|
|
|
# 2684 AF 75-300mm F4.5-5.6 (D) |
137
|
|
|
|
|
|
|
# 2589 AF APO 80-200mm F2.8 |
138
|
|
|
|
|
|
|
# 2628 High-Speed AF APO 80-200mm F2.8 G |
139
|
|
|
|
|
|
|
# 2604 AF 80-200mm F4.5-5.6 |
140
|
|
|
|
|
|
|
# 2560 AF 100-200mm F4.5 |
141
|
|
|
|
|
|
|
# 2606 AF 100-300mm F4.5-5.6 |
142
|
|
|
|
|
|
|
# 2631 AF APO 100-300mm F4.5-5.6 |
143
|
|
|
|
|
|
|
# 2681 AF APO 100-300mm F4.5-5.6 (D) |
144
|
|
|
|
|
|
|
# 2644 AF APO 100-400mm F4.5-6.7 |
145
|
|
|
|
|
|
|
# 2618 AF Xi 28-80mm F4-5.6 |
146
|
|
|
|
|
|
|
# 2615 AF Xi 28-105mm F3.5-4.5 |
147
|
|
|
|
|
|
|
# 2624 AF PZ 35-80mm F4-5.6 |
148
|
|
|
|
|
|
|
# 2616 AF Xi 35-200mm F4.5-5.6 |
149
|
|
|
|
|
|
|
# 2619 AF Xi 80-200mm F4.5-5.6 |
150
|
|
|
|
|
|
|
# 2621 AF Xi 100-300mm F4.5-5.6 |
151
|
|
|
|
|
|
|
# 2698 AF DT 11-18mm F4.5-5.6 (D) |
152
|
|
|
|
|
|
|
# 2697 AF DT 18-70mm F3.5-5.6 (D) |
153
|
|
|
|
|
|
|
# 2699 AF DT 18-200mm F3.5-6.3 (D) |
154
|
|
|
|
|
|
|
# 2590 1.4x TELE CONVERTER APO |
155
|
|
|
|
|
|
|
# 2601 2x TELE CONVERTER APO |
156
|
|
|
|
|
|
|
# 2610 1.4x TELE CONVERTER APO II |
157
|
|
|
|
|
|
|
# 2611 2x TELE CONVERTER APO II |
158
|
|
|
|
|
|
|
# 2687 1.4x TELE CONVERTER APO (D) |
159
|
|
|
|
|
|
|
# 2688 2x TELE CONVERTER APO (D) |
160
|
|
|
|
|
|
|
|
161
|
|
|
|
|
|
|
# high bytes in Sony LensID's identifying Metabones adapters and high bytes of Canon LensID's |
162
|
|
|
|
|
|
|
%metabonesID = ( |
163
|
|
|
|
|
|
|
# 0xef00 is used by Metabones, Fotodiox, Sigma and Viltrox adapters (JR) |
164
|
|
|
|
|
|
|
0xef00 => \ 'Canon EF Adapter', # with Canon LensID 0x00xx |
165
|
|
|
|
|
|
|
0xf000 => 0xef00, # with Canon LensID 0x01xx |
166
|
|
|
|
|
|
|
0xf100 => 0xef00, # with Canon LensID 0x02xx |
167
|
|
|
|
|
|
|
0xff00 => 0xef00, # with Canon LensID 0x10xx |
168
|
|
|
|
|
|
|
0x7700 => \ 'Metabones Speed Booster', # with Canon LensID 0x00xx |
169
|
|
|
|
|
|
|
0x7800 => 0x7700, # with Canon LensID 0x01xx |
170
|
|
|
|
|
|
|
0x7900 => 0x7700, # with Canon LensID 0x02xx |
171
|
|
|
|
|
|
|
0x8700 => 0x7700, # with Canon LensID 0x10xx |
172
|
|
|
|
|
|
|
0xbc00 => \ 'Metabones Speed Booster Ultra', # with Canon LensID 0x00xx |
173
|
|
|
|
|
|
|
0xbd00 => 0xbc00, # with Canon LensID 0x01xx |
174
|
|
|
|
|
|
|
0xbe00 => 0xbc00, # with Canon LensID 0x02xx |
175
|
|
|
|
|
|
|
0xcc00 => 0xbc00, # with Canon LensID 0x10xx |
176
|
|
|
|
|
|
|
); |
177
|
|
|
|
|
|
|
|
178
|
|
|
|
|
|
|
# lens ID numbers (ref 3) |
179
|
|
|
|
|
|
|
# ("New" and "II" appear in brackets if original version also has this LensType) |
180
|
|
|
|
|
|
|
%minoltaLensTypes = ( |
181
|
|
|
|
|
|
|
Notes => q{ |
182
|
|
|
|
|
|
|
Decimal values have been added to differentiate lenses which would otherwise |
183
|
|
|
|
|
|
|
have the same LensType, and are used by the Composite LensID tag when |
184
|
|
|
|
|
|
|
attempting to identify the specific lens model. "New" or "II" appear in |
185
|
|
|
|
|
|
|
brackets if the original version of the lens has the same LensType. Special |
186
|
|
|
|
|
|
|
logic is employed to identify the attached lens when a Metabones Canon EF |
187
|
|
|
|
|
|
|
adapter is used. |
188
|
|
|
|
|
|
|
}, |
189
|
|
|
|
|
|
|
OTHER => sub { |
190
|
|
|
|
|
|
|
my ($val, $inv) = @_; |
191
|
|
|
|
|
|
|
return undef if $inv; |
192
|
|
|
|
|
|
|
my $id = $val & 0xff00; |
193
|
|
|
|
|
|
|
# Note: Metabones Smart Adapter firmware versions before 31 kill |
194
|
|
|
|
|
|
|
# the high byte for 2-byte Canon LensType values, so the reported lens |
195
|
|
|
|
|
|
|
# will be incorrect for these |
196
|
|
|
|
|
|
|
my $mb = $metabonesID{$id}; |
197
|
|
|
|
|
|
|
if ($mb) { |
198
|
|
|
|
|
|
|
ref $mb or $id = $mb, $mb = $metabonesID{$id}; |
199
|
|
|
|
|
|
|
require Image::ExifTool::Canon; |
200
|
|
|
|
|
|
|
my $lens = $Image::ExifTool::Canon::canonLensTypes{$val - $id}; |
201
|
|
|
|
|
|
|
return "$lens + $$mb" if $lens; |
202
|
|
|
|
|
|
|
} elsif ($val >= 0x4900) { # test for Sigma MC-11 SA-E adapter with Sigma SA-mount lens |
203
|
|
|
|
|
|
|
require Image::ExifTool::Sigma; |
204
|
|
|
|
|
|
|
my $lens = $Image::ExifTool::Sigma::sigmaLensTypes{$val - 0x4900}; |
205
|
|
|
|
|
|
|
return "$lens + MC-11 SA-E" if $lens; |
206
|
|
|
|
|
|
|
} |
207
|
|
|
|
|
|
|
return undef; |
208
|
|
|
|
|
|
|
}, |
209
|
|
|
|
|
|
|
0 => 'Minolta AF 28-85mm F3.5-4.5 New', # New added (ref 13/18) |
210
|
|
|
|
|
|
|
1 => 'Minolta AF 80-200mm F2.8 HS-APO G', # white |
211
|
|
|
|
|
|
|
2 => 'Minolta AF 28-70mm F2.8 G', |
212
|
|
|
|
|
|
|
3 => 'Minolta AF 28-80mm F4-5.6', |
213
|
|
|
|
|
|
|
4 => 'Minolta AF 85mm F1.4G', #exiv2 0.23 |
214
|
|
|
|
|
|
|
5 => 'Minolta AF 35-70mm F3.5-4.5 [II]', # (original and II, ref 13) |
215
|
|
|
|
|
|
|
6 => 'Minolta AF 24-85mm F3.5-4.5 [New]', # (original and New, ref 13) |
216
|
|
|
|
|
|
|
# 7 => 'AF 100-400mm F4.5-6.7 (D)', ?? |
217
|
|
|
|
|
|
|
7 => 'Minolta AF 100-300mm F4.5-5.6 APO [New] or 100-400mm or Sigma Lens', |
218
|
|
|
|
|
|
|
7.1 => 'Minolta AF 100-400mm F4.5-6.7 APO', #JD |
219
|
|
|
|
|
|
|
7.2 => 'Sigma AF 100-300mm F4 EX DG IF', #JD |
220
|
|
|
|
|
|
|
8 => 'Minolta AF 70-210mm F4.5-5.6 [II]', # (original and II, ref 13) |
221
|
|
|
|
|
|
|
9 => 'Minolta AF 50mm F3.5 Macro', |
222
|
|
|
|
|
|
|
10 => 'Minolta AF 28-105mm F3.5-4.5 [New]', # (original and New, ref 13) |
223
|
|
|
|
|
|
|
11 => 'Minolta AF 300mm F4 HS-APO G', |
224
|
|
|
|
|
|
|
12 => 'Minolta AF 100mm F2.8 Soft Focus', |
225
|
|
|
|
|
|
|
13 => 'Minolta AF 75-300mm F4.5-5.6 (New or II)', # (II and New, ref 13) |
226
|
|
|
|
|
|
|
14 => 'Minolta AF 100-400mm F4.5-6.7 APO', |
227
|
|
|
|
|
|
|
15 => 'Minolta AF 400mm F4.5 HS-APO G', |
228
|
|
|
|
|
|
|
16 => 'Minolta AF 17-35mm F3.5 G', |
229
|
|
|
|
|
|
|
17 => 'Minolta AF 20-35mm F3.5-4.5', |
230
|
|
|
|
|
|
|
18 => 'Minolta AF 28-80mm F3.5-5.6 II', |
231
|
|
|
|
|
|
|
19 => 'Minolta AF 35mm F1.4 G', # G added (ref 18), but not New as per ref 13 |
232
|
|
|
|
|
|
|
20 => 'Minolta/Sony 135mm F2.8 [T4.5] STF', |
233
|
|
|
|
|
|
|
# 20 => 'Sony 135mm F2.8 [T4.5] STF (SAL135F28)', (ref JR) |
234
|
|
|
|
|
|
|
22 => 'Minolta AF 35-80mm F4-5.6 II', # II added (ref 13) |
235
|
|
|
|
|
|
|
23 => 'Minolta AF 200mm F4 Macro APO G', |
236
|
|
|
|
|
|
|
24 => 'Minolta/Sony AF 24-105mm F3.5-4.5 (D) or Sigma or Tamron Lens', |
237
|
|
|
|
|
|
|
# 24 => 'Sony 24-105mm F3.5-4.5 (SAL24105)', (ref JR) |
238
|
|
|
|
|
|
|
24.1 => 'Sigma 18-50mm F2.8', |
239
|
|
|
|
|
|
|
24.2 => 'Sigma 17-70mm F2.8-4.5 DC Macro', # (changed "(D)" to "DC Macro", ref JR) |
240
|
|
|
|
|
|
|
24.3 => 'Sigma 20-40mm F2.8 EX DG Aspherical IF', #JD/22 |
241
|
|
|
|
|
|
|
24.4 => 'Sigma 18-200mm F3.5-6.3 DC', #22 |
242
|
|
|
|
|
|
|
24.5 => 'Sigma DC 18-125mm F4-5,6 D', #exiv2 0.23 |
243
|
|
|
|
|
|
|
# 24.6 => 'Tamron SP AF 28-75mm F2.8 XR Di (IF) Macro', #JD |
244
|
|
|
|
|
|
|
24.6 => 'Tamron SP AF 28-75mm F2.8 XR Di LD Aspherical [IF] Macro', #NJ (Model A09) |
245
|
|
|
|
|
|
|
24.7 => 'Sigma 15-30mm F3.5-4.5 EX DG Aspherical', #JR |
246
|
|
|
|
|
|
|
25 => 'Minolta AF 100-300mm F4.5-5.6 APO (D) or Sigma Lens', |
247
|
|
|
|
|
|
|
25.1 => 'Sigma 100-300mm F4 EX (APO (D) or D IF)', #JD |
248
|
|
|
|
|
|
|
25.2 => 'Sigma 70mm F2.8 EX DG Macro', #JD |
249
|
|
|
|
|
|
|
25.3 => 'Sigma 20mm F1.8 EX DG Aspherical RF', #19 |
250
|
|
|
|
|
|
|
25.4 => 'Sigma 30mm F1.4 EX DC', #21/27 |
251
|
|
|
|
|
|
|
25.5 => 'Sigma 24mm F1.8 EX DG ASP Macro', #Florian Knorn |
252
|
|
|
|
|
|
|
# 25 - also seen for an "old Sigma 50mm Macro" (forum2833) |
253
|
|
|
|
|
|
|
27 => 'Minolta AF 85mm F1.4 G (D)', # added (D) (ref 13) |
254
|
|
|
|
|
|
|
# 27 => 'Venus Optics Laowa 105mm F2 STF', #IB (NC) |
255
|
|
|
|
|
|
|
28 => 'Minolta/Sony AF 100mm F2.8 Macro (D) or Tamron Lens', |
256
|
|
|
|
|
|
|
# 28 => 'Sony 100mm F2.8 Macro (SAL100M28)', (ref 18/JR) |
257
|
|
|
|
|
|
|
28.1 => 'Tamron SP AF 90mm F2.8 Di Macro', #JD (Model 272E) |
258
|
|
|
|
|
|
|
28.2 => 'Tamron SP AF 180mm F3.5 Di LD [IF] Macro', #27 (Model B01) ("SP" moved - ref JR) |
259
|
|
|
|
|
|
|
29 => 'Minolta/Sony AF 75-300mm F4.5-5.6 (D)', # Sony added (ref 13) |
260
|
|
|
|
|
|
|
# 29 => 'Sony 75-300mm F4.5-5.6 (SAL75300)', (ref JR) |
261
|
|
|
|
|
|
|
30 => 'Minolta AF 28-80mm F3.5-5.6 (D) or Sigma Lens', |
262
|
|
|
|
|
|
|
30.1 => 'Sigma AF 10-20mm F4-5.6 EX DC', #JD |
263
|
|
|
|
|
|
|
30.2 => 'Sigma AF 12-24mm F4.5-5.6 EX DG', |
264
|
|
|
|
|
|
|
30.3 => 'Sigma 28-70mm EX DG F2.8', #16 |
265
|
|
|
|
|
|
|
30.4 => 'Sigma 55-200mm F4-5.6 DC', #JD |
266
|
|
|
|
|
|
|
31 => 'Minolta/Sony AF 50mm F2.8 Macro (D) or F3.5', |
267
|
|
|
|
|
|
|
# 31 => 'Sony 50mm F2.8 Macro (SAL50M28)', (ref JR) |
268
|
|
|
|
|
|
|
31.1 => 'Minolta/Sony AF 50mm F3.5 Macro', |
269
|
|
|
|
|
|
|
32 => 'Minolta/Sony AF 300mm F2.8 G or 1.5x Teleconverter', #13/18 |
270
|
|
|
|
|
|
|
# 32 => 'Minolta AF 300mm F2.8 APO G (D) SSM', (ref 13) ("APO" added - ref JR) |
271
|
|
|
|
|
|
|
# 32 => 'Sony 300mm F2.8 G (SAL300F28G)', (ref 18/JR) |
272
|
|
|
|
|
|
|
33 => 'Minolta/Sony AF 70-200mm F2.8 G', |
273
|
|
|
|
|
|
|
# 33 => 'Sony 70-200mm F2.8 G (SAL70200G)', (ref JR) |
274
|
|
|
|
|
|
|
# 33 => 'Minolta AF 70-200mm F2.8 APO G (D) SSM' (ref 13) ("APO" added - ref JR) |
275
|
|
|
|
|
|
|
35 => 'Minolta AF 85mm F1.4 G (D) Limited', |
276
|
|
|
|
|
|
|
36 => 'Minolta AF 28-100mm F3.5-5.6 (D)', |
277
|
|
|
|
|
|
|
38 => 'Minolta AF 17-35mm F2.8-4 (D)', # (Konica Minolta, ref 13) |
278
|
|
|
|
|
|
|
39 => 'Minolta AF 28-75mm F2.8 (D)', # (Konica Minolta, ref 13) |
279
|
|
|
|
|
|
|
40 => 'Minolta/Sony AF DT 18-70mm F3.5-5.6 (D)', # (Konica Minolta, ref 13) |
280
|
|
|
|
|
|
|
# 40 => 'Sony DT 18-70mm F3.5-5.6 (SAL1870)', (ref JR) |
281
|
|
|
|
|
|
|
#40.1 => 'Sony AF DT 18-200mm F3.5-6.3', #11 (anomaly? - PH) |
282
|
|
|
|
|
|
|
41 => 'Minolta/Sony AF DT 11-18mm F4.5-5.6 (D) or Tamron Lens', # (Konica Minolta, ref 13) |
283
|
|
|
|
|
|
|
# 41 => 'Sony DT 11-18mm F4.5-5.6 (SAL1118)', (ref JR) |
284
|
|
|
|
|
|
|
41.1 => 'Tamron SP AF 11-18mm F4.5-5.6 Di II LD Aspherical IF', #JD (Model A13) |
285
|
|
|
|
|
|
|
42 => 'Minolta/Sony AF DT 18-200mm F3.5-6.3 (D)', # Sony added (ref 13) (Konica Minolta, ref 13) |
286
|
|
|
|
|
|
|
# 42 => 'Sony DT 18-200mm F3.5-6.3 (SAL18200)', (ref JR) |
287
|
|
|
|
|
|
|
43 => 'Sony 35mm F1.4 G (SAL35F14G)', # changed from Minolta to Sony (ref 13/18/JR) (but ref 11 shows both!) |
288
|
|
|
|
|
|
|
44 => 'Sony 50mm F1.4 (SAL50F14)', # changed from Minolta to Sony (ref 13/18/JR) |
289
|
|
|
|
|
|
|
45 => 'Carl Zeiss Planar T* 85mm F1.4 ZA (SAL85F14Z)', #JR |
290
|
|
|
|
|
|
|
46 => 'Carl Zeiss Vario-Sonnar T* DT 16-80mm F3.5-4.5 ZA (SAL1680Z)', #JR |
291
|
|
|
|
|
|
|
47 => 'Carl Zeiss Sonnar T* 135mm F1.8 ZA (SAL135F18Z)', #JR |
292
|
|
|
|
|
|
|
48 => 'Carl Zeiss Vario-Sonnar T* 24-70mm F2.8 ZA SSM (SAL2470Z) or Other Lens', #11/JR |
293
|
|
|
|
|
|
|
48.1 => 'Carl Zeiss Vario-Sonnar T* 24-70mm F2.8 ZA SSM II (SAL2470Z2)', #JR |
294
|
|
|
|
|
|
|
48.2 => 'Tamron SP 24-70mm F2.8 Di USD', #IB (A007) (also with id 204) |
295
|
|
|
|
|
|
|
49 => 'Sony DT 55-200mm F4-5.6 (SAL55200)', #JD/JR |
296
|
|
|
|
|
|
|
50 => 'Sony DT 18-250mm F3.5-6.3 (SAL18250)', #11/JR |
297
|
|
|
|
|
|
|
51 => 'Sony DT 16-105mm F3.5-5.6 (SAL16105)', #11/JR |
298
|
|
|
|
|
|
|
#51.1 => 'Sony AF DT 55-200mm F4-5.5', #11 (anomaly? - PH) |
299
|
|
|
|
|
|
|
# LensType 52 also seen for Fringer Contax_N to E-mount adapter Ver.31 and Ver.21 (ref JR) |
300
|
|
|
|
|
|
|
52 => 'Sony 70-300mm F4.5-5.6 G SSM (SAL70300G) or G SSM II or Tamron Lens', #JD |
301
|
|
|
|
|
|
|
52.1 => 'Sony 70-300mm F4.5-5.6 G SSM II (SAL70300G2)', #JR |
302
|
|
|
|
|
|
|
52.2 => 'Tamron SP 70-300mm F4-5.6 Di USD', #JR,NJ (Model A005) |
303
|
|
|
|
|
|
|
53 => 'Sony 70-400mm F4-5.6 G SSM (SAL70400G)', #17(/w correction by Stephen Bishop)/JR |
304
|
|
|
|
|
|
|
54 => 'Carl Zeiss Vario-Sonnar T* 16-35mm F2.8 ZA SSM (SAL1635Z) or ZA SSM II', #17/JR |
305
|
|
|
|
|
|
|
54.1 => 'Carl Zeiss Vario-Sonnar T* 16-35mm F2.8 ZA SSM II (SAL1635Z2)', #JR |
306
|
|
|
|
|
|
|
55 => 'Sony DT 18-55mm F3.5-5.6 SAM (SAL1855) or SAM II', #PH |
307
|
|
|
|
|
|
|
55.1 => 'Sony DT 18-55mm F3.5-5.6 SAM II (SAL18552)', #JR |
308
|
|
|
|
|
|
|
56 => 'Sony DT 55-200mm F4-5.6 SAM (SAL55200-2)', #22/JR |
309
|
|
|
|
|
|
|
57 => 'Sony DT 50mm F1.8 SAM (SAL50F18) or Tamron Lens or Commlite CM-EF-NEX adapter', #22/JR |
310
|
|
|
|
|
|
|
57.1 => 'Tamron SP AF 60mm F2 Di II LD [IF] Macro 1:1', # (Model G005) (ref https://exiftool.org/forum/index.php/topic,3858.0.html) |
311
|
|
|
|
|
|
|
57.2 => 'Tamron 18-270mm F3.5-6.3 Di II PZD', #27 (Model B008) |
312
|
|
|
|
|
|
|
# (note: the Commlite CM-EF-NEX adapter also appears to give LensType 57, ref JR) |
313
|
|
|
|
|
|
|
58 => 'Sony DT 30mm F2.8 Macro SAM (SAL30M28)', #22/JR |
314
|
|
|
|
|
|
|
59 => 'Sony 28-75mm F2.8 SAM (SAL2875)', #21/JR |
315
|
|
|
|
|
|
|
60 => 'Carl Zeiss Distagon T* 24mm F2 ZA SSM (SAL24F20Z)', #17/JR |
316
|
|
|
|
|
|
|
61 => 'Sony 85mm F2.8 SAM (SAL85F28)', #17/JR |
317
|
|
|
|
|
|
|
62 => 'Sony DT 35mm F1.8 SAM (SAL35F18)', #PH/JR |
318
|
|
|
|
|
|
|
63 => 'Sony DT 16-50mm F2.8 SSM (SAL1650)', #17/JR |
319
|
|
|
|
|
|
|
64 => 'Sony 500mm F4 G SSM (SAL500F40G)', #29 |
320
|
|
|
|
|
|
|
65 => 'Sony DT 18-135mm F3.5-5.6 SAM (SAL18135)', #JR |
321
|
|
|
|
|
|
|
66 => 'Sony 300mm F2.8 G SSM II (SAL300F28G2)', #29 |
322
|
|
|
|
|
|
|
67 => 'Sony 70-200mm F2.8 G SSM II (SAL70200G2)', #JR |
323
|
|
|
|
|
|
|
68 => 'Sony DT 55-300mm F4.5-5.6 SAM (SAL55300)', #29 |
324
|
|
|
|
|
|
|
69 => 'Sony 70-400mm F4-5.6 G SSM II (SAL70400G2)', #JR |
325
|
|
|
|
|
|
|
70 => 'Carl Zeiss Planar T* 50mm F1.4 ZA SSM (SAL50F14Z)', #JR |
326
|
|
|
|
|
|
|
128 => 'Tamron or Sigma Lens (128)', |
327
|
|
|
|
|
|
|
128.1 => 'Tamron AF 18-200mm F3.5-6.3 XR Di II LD Aspherical [IF] Macro', #JR (Model A14) |
328
|
|
|
|
|
|
|
# was 128.1 => 'Tamron 18-200mm F3.5-6.3', |
329
|
|
|
|
|
|
|
128.2 => 'Tamron AF 28-300mm F3.5-6.3 XR Di LD Aspherical [IF] Macro', #JR (Model A061) |
330
|
|
|
|
|
|
|
# was 128.2 => 'Tamron 28-300mm F3.5-6.3', |
331
|
|
|
|
|
|
|
# (removed -- probably never existed, ref IB) 'Tamron 80-300mm F3.5-6.3', |
332
|
|
|
|
|
|
|
128.3 => 'Tamron AF 28-200mm F3.8-5.6 XR Di Aspherical [IF] Macro', #JD (Model A031) |
333
|
|
|
|
|
|
|
# also Tamron AF 28-200mm F3.8-5.6 Aspherical', #IB (Model 71D) |
334
|
|
|
|
|
|
|
# and 'Tamron AF 28-200mm F3.8-5.6 LD Aspherical [IF] Super', #IB (Model 171D) |
335
|
|
|
|
|
|
|
128.4 => 'Tamron SP AF 17-35mm F2.8-4 Di LD Aspherical IF', #JD (Model A05) |
336
|
|
|
|
|
|
|
128.5 => 'Sigma AF 50-150mm F2.8 EX DC APO HSM II', #JD |
337
|
|
|
|
|
|
|
128.6 => 'Sigma 10-20mm F3.5 EX DC HSM', #11 (Model 202-205) |
338
|
|
|
|
|
|
|
128.7 => 'Sigma 70-200mm F2.8 II EX DG APO MACRO HSM', #24 |
339
|
|
|
|
|
|
|
128.8 => 'Sigma 10mm F2.8 EX DC HSM Fisheye', #Florian Knorn |
340
|
|
|
|
|
|
|
# (yes, '128.10'. My condolences to typed languages that use this database - PH) |
341
|
|
|
|
|
|
|
128.9 => 'Sigma 50mm F1.4 EX DG HSM', #Florian Knorn (Model A014, ref IB) |
342
|
|
|
|
|
|
|
'128.10' => 'Sigma 85mm F1.4 EX DG HSM', #27 |
343
|
|
|
|
|
|
|
'128.11' => 'Sigma 24-70mm F2.8 IF EX DG HSM', #27 |
344
|
|
|
|
|
|
|
'128.12' => 'Sigma 18-250mm F3.5-6.3 DC OS HSM', #27 |
345
|
|
|
|
|
|
|
'128.13' => 'Sigma 17-50mm F2.8 EX DC HSM', #Exiv2 |
346
|
|
|
|
|
|
|
'128.14' => 'Sigma 17-70mm F2.8-4 DC Macro HSM', # (no OS for Sony mount, ref JR) (also C013 Model, ref IB) |
347
|
|
|
|
|
|
|
'128.15' => 'Sigma 150mm F2.8 EX DG OS HSM APO Macro', #Marcus Holland-Moritz |
348
|
|
|
|
|
|
|
'128.16' => 'Sigma 150-500mm F5-6.3 APO DG OS HSM', #IB |
349
|
|
|
|
|
|
|
'128.17' => 'Tamron AF 28-105mm F4-5.6 [IF]', #IB (Model 179D) |
350
|
|
|
|
|
|
|
'128.18' => 'Sigma 35mm F1.4 DG HSM', #JR |
351
|
|
|
|
|
|
|
'128.19' => 'Sigma 18-35mm F1.8 DC HSM', #JR (Model A013, ref IB) |
352
|
|
|
|
|
|
|
'128.20' => 'Sigma 50-500mm F4.5-6.3 APO DG OS HSM', #JR |
353
|
|
|
|
|
|
|
'128.21' => 'Sigma 24-105mm F4 DG HSM | A', #JR (013) |
354
|
|
|
|
|
|
|
'128.22' => 'Sigma 30mm F1.4', #IB |
355
|
|
|
|
|
|
|
'128.23' => 'Sigma 35mm F1.4 DG HSM | A', #IB/JR (012) |
356
|
|
|
|
|
|
|
'128.24' => 'Sigma 105mm F2.8 EX DG OS HSM Macro', #IB |
357
|
|
|
|
|
|
|
'128.25' => 'Sigma 180mm F2.8 EX DG OS HSM APO Macro', #IB |
358
|
|
|
|
|
|
|
'128.26' => 'Sigma 18-300mm F3.5-6.3 DC Macro HSM | C', #IB/JR (014) |
359
|
|
|
|
|
|
|
'128.27' => 'Sigma 18-50mm F2.8-4.5 DC HSM', #IB |
360
|
|
|
|
|
|
|
129 => 'Tamron Lens (129)', |
361
|
|
|
|
|
|
|
129.1 => 'Tamron 200-400mm F5.6 LD', #12 (LD ref 23) |
362
|
|
|
|
|
|
|
129.2 => 'Tamron 70-300mm F4-5.6 LD', #12 |
363
|
|
|
|
|
|
|
131 => 'Tamron 20-40mm F2.7-3.5 SP Aspherical IF', #23 (Model 266D) |
364
|
|
|
|
|
|
|
135 => 'Vivitar 28-210mm F3.5-5.6', #16 |
365
|
|
|
|
|
|
|
136 => 'Tokina EMZ M100 AF 100mm F3.5', #JD |
366
|
|
|
|
|
|
|
137 => 'Cosina 70-210mm F2.8-4 AF', #11 |
367
|
|
|
|
|
|
|
138 => 'Soligor 19-35mm F3.5-4.5', #11 |
368
|
|
|
|
|
|
|
139 => 'Tokina AF 28-300mm F4-6.3', #IB |
369
|
|
|
|
|
|
|
# (the following Cosina 70-300mm lens was also marketed as a Phoenix, Vivitar Series 1, and |
370
|
|
|
|
|
|
|
# some sort of 3rd-party marketing as a Voightlander 70-300mm F4.5-5.6 SKOPAR AF, ref IB) |
371
|
|
|
|
|
|
|
142 => 'Cosina AF 70-300mm F4.5-5.6 MC', #IB (was 'Voigtlander 70-300mm F4.5-5.6', #JD) |
372
|
|
|
|
|
|
|
146 => 'Voigtlander Macro APO-Lanthar 125mm F2.5 SL', #JD |
373
|
|
|
|
|
|
|
194 => 'Tamron SP AF 17-50mm F2.8 XR Di II LD Aspherical [IF]', #23 (Model A16) |
374
|
|
|
|
|
|
|
202 => 'Tamron SP AF 70-200mm F2.8 Di LD [IF] Macro', #JR (Model A001) (see also 255.7) |
375
|
|
|
|
|
|
|
203 => 'Tamron SP 70-200mm F2.8 Di USD', #JR (Model A009) |
376
|
|
|
|
|
|
|
204 => 'Tamron SP 24-70mm F2.8 Di USD', #JR (Model A007) (also with id 48) |
377
|
|
|
|
|
|
|
212 => 'Tamron 28-300mm F3.5-6.3 Di PZD', #JR (Model A010) |
378
|
|
|
|
|
|
|
213 => 'Tamron 16-300mm F3.5-6.3 Di II PZD Macro', #JR (Model B016) |
379
|
|
|
|
|
|
|
214 => 'Tamron SP 150-600mm F5-6.3 Di USD', #JR (Model A011) |
380
|
|
|
|
|
|
|
215 => 'Tamron SP 15-30mm F2.8 Di USD', #JR (Model A012) |
381
|
|
|
|
|
|
|
216 => 'Tamron SP 45mm F1.8 Di USD', #forum8320 (F013) |
382
|
|
|
|
|
|
|
217 => 'Tamron SP 35mm F1.8 Di USD', #forum8320 (F012) |
383
|
|
|
|
|
|
|
218 => 'Tamron SP 90mm F2.8 Di Macro 1:1 USD (F017)', #JR (Model F017) |
384
|
|
|
|
|
|
|
220 => 'Tamron SP 150-600mm F5-6.3 Di USD G2', #forum8846 (Model A022) |
385
|
|
|
|
|
|
|
224 => 'Tamron SP 90mm F2.8 Di Macro 1:1 USD (F004)', #JR (Model F004) |
386
|
|
|
|
|
|
|
255 => 'Tamron Lens (255)', |
387
|
|
|
|
|
|
|
255.1 => 'Tamron SP AF 17-50mm F2.8 XR Di II LD Aspherical', # (Model A16) |
388
|
|
|
|
|
|
|
255.2 => 'Tamron AF 18-250mm F3.5-6.3 XR Di II LD', #JD (Model A18?) |
389
|
|
|
|
|
|
|
#? 225.2 => 'Tamron AF 18-250mm F3.5-6.3 Di II LD Aspherical [IF] Macro', #JR (Model A18) |
390
|
|
|
|
|
|
|
255.3 => 'Tamron AF 55-200mm F4-5.6 Di II LD Macro', # (Model A15) (added "LD Macro", ref 23) |
391
|
|
|
|
|
|
|
255.4 => 'Tamron AF 70-300mm F4-5.6 Di LD Macro 1:2', # (Model A17) |
392
|
|
|
|
|
|
|
255.5 => 'Tamron SP AF 200-500mm F5.0-6.3 Di LD IF', # (Model A08) |
393
|
|
|
|
|
|
|
255.6 => 'Tamron SP AF 10-24mm F3.5-4.5 Di II LD Aspherical IF', #22 (Model B001) |
394
|
|
|
|
|
|
|
255.7 => 'Tamron SP AF 70-200mm F2.8 Di LD IF Macro', #22 (Model A001) |
395
|
|
|
|
|
|
|
255.8 => 'Tamron SP AF 28-75mm F2.8 XR Di LD Aspherical IF', #24 (Model A09) |
396
|
|
|
|
|
|
|
255.9 => 'Tamron AF 90-300mm F4.5-5.6 Telemacro', #Fredrik Agert |
397
|
|
|
|
|
|
|
18688 => 'Sigma MC-11 SA-E Mount Converter with not-supported Sigma lens', |
398
|
|
|
|
|
|
|
# The MC-11 SA-E Mount Converter uses this 18688 offset for not-supported SIGMA mount lenses. |
399
|
|
|
|
|
|
|
# The MC-11 EF-E Mount Converter uses the 61184 offset for not-supported CANON mount lenses, as also used by Metabones. |
400
|
|
|
|
|
|
|
# Both MC-11 SA-E and EF-E Mount Converters use the 504xx LensType2 values for supported SA-mount or EF-mount Sigma lenses. |
401
|
|
|
|
|
|
|
25501 => 'Minolta AF 50mm F1.7', #7 |
402
|
|
|
|
|
|
|
25511 => 'Minolta AF 35-70mm F4 or Other Lens', |
403
|
|
|
|
|
|
|
25511.1 => 'Sigma UC AF 28-70mm F3.5-4.5', #12/16(HighSpeed-AF) |
404
|
|
|
|
|
|
|
25511.2 => 'Sigma AF 28-70mm F2.8', #JD |
405
|
|
|
|
|
|
|
25511.3 => 'Sigma M-AF 70-200mm F2.8 EX Aspherical', #12 |
406
|
|
|
|
|
|
|
25511.4 => 'Quantaray M-AF 35-80mm F4-5.6', #JD |
407
|
|
|
|
|
|
|
25511.5 => 'Tokina 28-70mm F2.8-4.5 AF', #IB |
408
|
|
|
|
|
|
|
25521 => 'Minolta AF 28-85mm F3.5-4.5 or Other Lens', # not New (ref 18) |
409
|
|
|
|
|
|
|
25521.1 => 'Tokina 19-35mm F3.5-4.5', #3 |
410
|
|
|
|
|
|
|
25521.2 => 'Tokina 28-70mm F2.8 AT-X', #7 |
411
|
|
|
|
|
|
|
25521.3 => 'Tokina 80-400mm F4.5-5.6 AT-X AF II 840', #JD |
412
|
|
|
|
|
|
|
25521.4 => 'Tokina AF PRO 28-80mm F2.8 AT-X 280', #JD |
413
|
|
|
|
|
|
|
25521.5 => 'Tokina AT-X PRO [II] AF 28-70mm F2.6-2.8 270', #24 (original + II versions) |
414
|
|
|
|
|
|
|
25521.6 => 'Tamron AF 19-35mm F3.5-4.5', #JD (Model A10) |
415
|
|
|
|
|
|
|
25521.7 => 'Angenieux AF 28-70mm F2.6', #JD |
416
|
|
|
|
|
|
|
25521.8 => 'Tokina AT-X 17 AF 17mm F3.5', #27 |
417
|
|
|
|
|
|
|
25521.9 => 'Tokina 20-35mm F3.5-4.5 II AF', #IB |
418
|
|
|
|
|
|
|
25531 => 'Minolta AF 28-135mm F4-4.5 or Other Lens', |
419
|
|
|
|
|
|
|
25531.1 => 'Sigma ZOOM-alpha 35-135mm F3.5-4.5', #16 |
420
|
|
|
|
|
|
|
25531.2 => 'Sigma 28-105mm F2.8-4 Aspherical', #JD |
421
|
|
|
|
|
|
|
25531.3 => 'Sigma 28-105mm F4-5.6 UC', #JR |
422
|
|
|
|
|
|
|
25531.4 => 'Tokina AT-X 242 AF 24-200mm F3.5-5.6', #IB |
423
|
|
|
|
|
|
|
25541 => 'Minolta AF 35-105mm F3.5-4.5', #13 |
424
|
|
|
|
|
|
|
25551 => 'Minolta AF 70-210mm F4 Macro or Sigma Lens', |
425
|
|
|
|
|
|
|
25551.1 => 'Sigma 70-210mm F4-5.6 APO', #7 |
426
|
|
|
|
|
|
|
25551.2 => 'Sigma M-AF 70-200mm F2.8 EX APO', #6 |
427
|
|
|
|
|
|
|
25551.3 => 'Sigma 75-200mm F2.8-3.5', #22 |
428
|
|
|
|
|
|
|
25561 => 'Minolta AF 135mm F2.8', |
429
|
|
|
|
|
|
|
25571 => 'Minolta/Sony AF 28mm F2.8', # Sony added (ref 18) |
430
|
|
|
|
|
|
|
# 25571 => 'Sony 28mm F2.8 (SAL28F28)', (ref 18/JR) |
431
|
|
|
|
|
|
|
25581 => 'Minolta AF 24-50mm F4', |
432
|
|
|
|
|
|
|
25601 => 'Minolta AF 100-200mm F4.5', |
433
|
|
|
|
|
|
|
25611 => 'Minolta AF 75-300mm F4.5-5.6 or Sigma Lens', #13 |
434
|
|
|
|
|
|
|
25611.1 => 'Sigma 70-300mm F4-5.6 DL Macro', #12 (also DG version ref 27, and APO version ref JR) |
435
|
|
|
|
|
|
|
25611.2 => 'Sigma 300mm F4 APO Macro', #3/7 |
436
|
|
|
|
|
|
|
25611.3 => 'Sigma AF 500mm F4.5 APO', #JD |
437
|
|
|
|
|
|
|
25611.4 => 'Sigma AF 170-500mm F5-6.3 APO Aspherical', #JD |
438
|
|
|
|
|
|
|
25611.5 => 'Tokina AT-X AF 300mm F4', #JD |
439
|
|
|
|
|
|
|
25611.6 => 'Tokina AT-X AF 400mm F5.6 SD', #22 |
440
|
|
|
|
|
|
|
25611.7 => 'Tokina AF 730 II 75-300mm F4.5-5.6', #JD |
441
|
|
|
|
|
|
|
25611.8 => 'Sigma 800mm F5.6 APO', #https://exiftool.org/forum/index.php/topic,3472.0.html |
442
|
|
|
|
|
|
|
25611.9 => 'Sigma AF 400mm F5.6 APO Macro', #27 |
443
|
|
|
|
|
|
|
'25611.10' => 'Sigma 1000mm F8 APO', #JR |
444
|
|
|
|
|
|
|
25621 => 'Minolta AF 50mm F1.4 [New]', # original and New, not Sony (ref 13/18) |
445
|
|
|
|
|
|
|
25631 => 'Minolta AF 300mm F2.8 APO or Sigma Lens', # changed G to APO (ref 13) |
446
|
|
|
|
|
|
|
25631.1 => 'Sigma AF 50-500mm F4-6.3 EX DG APO', #JD |
447
|
|
|
|
|
|
|
25631.2 => 'Sigma AF 170-500mm F5-6.3 APO Aspherical', #JD (also DG version, ref 27) |
448
|
|
|
|
|
|
|
25631.3 => 'Sigma AF 500mm F4.5 EX DG APO', #JD |
449
|
|
|
|
|
|
|
25631.4 => 'Sigma 400mm F5.6 APO', #22 |
450
|
|
|
|
|
|
|
25641 => 'Minolta AF 50mm F2.8 Macro or Sigma Lens', |
451
|
|
|
|
|
|
|
25641.1 => 'Sigma 50mm F2.8 EX Macro', #11 |
452
|
|
|
|
|
|
|
25651 => 'Minolta AF 600mm F4 APO', # ("APO" added - ref JR) |
453
|
|
|
|
|
|
|
25661 => 'Minolta AF 24mm F2.8 or Sigma Lens', |
454
|
|
|
|
|
|
|
25661.1 => 'Sigma 17-35mm F2.8-4 EX Aspherical', #https://exiftool.org/forum/index.php/topic,3789.msg17679.html#msg17679 |
455
|
|
|
|
|
|
|
25721 => 'Minolta/Sony AF 500mm F8 Reflex', |
456
|
|
|
|
|
|
|
# 25721 => 'Sony 500mm F8 Reflex (SAL500F80)', (ref JR) |
457
|
|
|
|
|
|
|
25781 => 'Minolta/Sony AF 16mm F2.8 Fisheye or Sigma Lens', # Sony added (ref 13/18) |
458
|
|
|
|
|
|
|
# 25781 => 'Sony 16mm F2.8 Fisheye (SAL16F28)', (ref 18/JR) |
459
|
|
|
|
|
|
|
25781.1 => 'Sigma 8mm F4 EX [DG] Fisheye', |
460
|
|
|
|
|
|
|
25781.2 => 'Sigma 14mm F3.5', |
461
|
|
|
|
|
|
|
25781.3 => 'Sigma 15mm F2.8 Fisheye', #JD (writes 16mm to EXIF) |
462
|
|
|
|
|
|
|
25791 => 'Minolta/Sony AF 20mm F2.8 or Tokina Lens', # Sony added (ref 11) |
463
|
|
|
|
|
|
|
# 25791 => 'Sony 20mm F2.8 (SAL20F28)', (ref JR) |
464
|
|
|
|
|
|
|
25791.1 => 'Tokina AT-X Pro DX 11-16mm F2.8', #https://exiftool.org/forum/index.php/topic,3593.0.html |
465
|
|
|
|
|
|
|
25811 => 'Minolta AF 100mm F2.8 Macro [New] or Sigma or Tamron Lens', # not Sony (ref 13/18) |
466
|
|
|
|
|
|
|
25811.1 => 'Sigma AF 90mm F2.8 Macro', #JD |
467
|
|
|
|
|
|
|
25811.2 => 'Sigma AF 105mm F2.8 EX [DG] Macro', #JD |
468
|
|
|
|
|
|
|
25811.3 => 'Sigma 180mm F5.6 Macro', |
469
|
|
|
|
|
|
|
25811.4 => 'Sigma 180mm F3.5 EX DG Macro', #https://exiftool.org/forum/index.php/topic,3789.msg17679.html#msg17679 |
470
|
|
|
|
|
|
|
25811.5 => 'Tamron 90mm F2.8 Macro', |
471
|
|
|
|
|
|
|
25851 => 'Beroflex 35-135mm F3.5-4.5', #16 |
472
|
|
|
|
|
|
|
25858 => 'Minolta AF 35-105mm F3.5-4.5 New or Tamron Lens', |
473
|
|
|
|
|
|
|
25858.1 => 'Tamron 24-135mm F3.5-5.6', # (Model 190D) |
474
|
|
|
|
|
|
|
25881 => 'Minolta AF 70-210mm F3.5-4.5', |
475
|
|
|
|
|
|
|
25891 => 'Minolta AF 80-200mm F2.8 APO or Tokina Lens', # black |
476
|
|
|
|
|
|
|
25891.1 => 'Tokina 80-200mm F2.8', |
477
|
|
|
|
|
|
|
# 25901 - Note: only get this with older 1.4x and lenses with 5-digit LensTypes (ref 27) |
478
|
|
|
|
|
|
|
# 25901 - also "Minolta AF 200mm F2.8 HS-APO G + Minolta AF 1.4x APO" |
479
|
|
|
|
|
|
|
25901 => 'Minolta AF 200mm F2.8 G APO + Minolta AF 1.4x APO or Other Lens + 1.4x', #26 |
480
|
|
|
|
|
|
|
25901.1 => 'Minolta AF 600mm F4 HS-APO G + Minolta AF 1.4x APO', #27 |
481
|
|
|
|
|
|
|
25911 => 'Minolta AF 35mm F1.4', #(from Sony list) (not G as per ref 13) |
482
|
|
|
|
|
|
|
25921 => 'Minolta AF 85mm F1.4 G (D)', |
483
|
|
|
|
|
|
|
25931 => 'Minolta AF 200mm F2.8 APO', # (not "G", see 26121 - ref JR) |
484
|
|
|
|
|
|
|
25941 => 'Minolta AF 3x-1x F1.7-2.8 Macro', |
485
|
|
|
|
|
|
|
25961 => 'Minolta AF 28mm F2', |
486
|
|
|
|
|
|
|
25971 => 'Minolta AF 35mm F2 [New]', #13 |
487
|
|
|
|
|
|
|
25981 => 'Minolta AF 100mm F2', |
488
|
|
|
|
|
|
|
# 26011 - Note: only get this with older 2x and lenses with 5-digit LensTypes (ref 27) |
489
|
|
|
|
|
|
|
# 26011 - also "Minolta AF 200mm F2.8 HS-APO G + Minolta AF 2x APO" |
490
|
|
|
|
|
|
|
26011 => 'Minolta AF 200mm F2.8 G APO + Minolta AF 2x APO or Other Lens + 2x', #26 |
491
|
|
|
|
|
|
|
26011.1 => 'Minolta AF 600mm F4 HS-APO G + Minolta AF 2x APO', #27 |
492
|
|
|
|
|
|
|
26041 => 'Minolta AF 80-200mm F4.5-5.6', |
493
|
|
|
|
|
|
|
26051 => 'Minolta AF 35-80mm F4-5.6', #(from Sony list) |
494
|
|
|
|
|
|
|
26061 => 'Minolta AF 100-300mm F4.5-5.6', # not (D) (ref 13/18) |
495
|
|
|
|
|
|
|
26071 => 'Minolta AF 35-80mm F4-5.6', #13 |
496
|
|
|
|
|
|
|
26081 => 'Minolta AF 300mm F2.8 HS-APO G', # HS-APO added (ref 13/18) |
497
|
|
|
|
|
|
|
26091 => 'Minolta AF 600mm F4 HS-APO G', |
498
|
|
|
|
|
|
|
26121 => 'Minolta AF 200mm F2.8 HS-APO G', |
499
|
|
|
|
|
|
|
26131 => 'Minolta AF 50mm F1.7 New', |
500
|
|
|
|
|
|
|
26151 => 'Minolta AF 28-105mm F3.5-4.5 xi', # xi, not Power Zoom (ref 13/18) |
501
|
|
|
|
|
|
|
26161 => 'Minolta AF 35-200mm F4.5-5.6 xi', # xi, not Power Zoom (ref 13/18) |
502
|
|
|
|
|
|
|
26181 => 'Minolta AF 28-80mm F4-5.6 xi', # xi, not Power Zoom (ref 13/18) |
503
|
|
|
|
|
|
|
26191 => 'Minolta AF 80-200mm F4.5-5.6 xi', # xi, not Power Zoom (ref 13/18) |
504
|
|
|
|
|
|
|
26201 => 'Minolta AF 28-70mm F2.8 G', #11 |
505
|
|
|
|
|
|
|
26211 => 'Minolta AF 100-300mm F4.5-5.6 xi', # xi, not Power Zoom (ref 13/18) |
506
|
|
|
|
|
|
|
26241 => 'Minolta AF 35-80mm F4-5.6 Power Zoom', |
507
|
|
|
|
|
|
|
26281 => 'Minolta AF 80-200mm F2.8 HS-APO G', #11 ("HS-APO" added, white, probably same as 1, non-HS is 25891 - ref JR) |
508
|
|
|
|
|
|
|
26291 => 'Minolta AF 85mm F1.4 New', |
509
|
|
|
|
|
|
|
26311 => 'Minolta AF 100-300mm F4.5-5.6 APO', #11 (does not exist? https://www.dyxum.com/dforum/lens-data-requested_topic23435_page2.html) |
510
|
|
|
|
|
|
|
26321 => 'Minolta AF 24-50mm F4 New', |
511
|
|
|
|
|
|
|
26381 => 'Minolta AF 50mm F2.8 Macro New', |
512
|
|
|
|
|
|
|
26391 => 'Minolta AF 100mm F2.8 Macro', |
513
|
|
|
|
|
|
|
26411 => 'Minolta/Sony AF 20mm F2.8 New', # Sony added (ref 13) |
514
|
|
|
|
|
|
|
26421 => 'Minolta AF 24mm F2.8 New', |
515
|
|
|
|
|
|
|
26441 => 'Minolta AF 100-400mm F4.5-6.7 APO', #11 |
516
|
|
|
|
|
|
|
26621 => 'Minolta AF 50mm F1.4 New', |
517
|
|
|
|
|
|
|
26671 => 'Minolta AF 35mm F2 New', |
518
|
|
|
|
|
|
|
26681 => 'Minolta AF 28mm F2 New', |
519
|
|
|
|
|
|
|
26721 => 'Minolta AF 24-105mm F3.5-4.5 (D)', #11 |
520
|
|
|
|
|
|
|
# 30464: newer firmware versions of the Speed Booster report type 30464 (=0x7700) |
521
|
|
|
|
|
|
|
# - this is the base to which the Canon LensType is added |
522
|
|
|
|
|
|
|
30464 => 'Metabones Canon EF Speed Booster', #Metabones (to this, add Canon LensType) |
523
|
|
|
|
|
|
|
45671 => 'Tokina 70-210mm F4-5.6', #22 |
524
|
|
|
|
|
|
|
45681 => 'Tokina AF 35-200mm F4-5.6 Zoom SD', #IB (model 352) |
525
|
|
|
|
|
|
|
45701 => 'Tamron AF 35-135mm F3.5-4.5', #IB (model 40d) |
526
|
|
|
|
|
|
|
45711 => 'Vivitar 70-210mm F4.5-5.6', #IB |
527
|
|
|
|
|
|
|
45741 => '2x Teleconverter or Tamron or Tokina Lens', #18 |
528
|
|
|
|
|
|
|
45741.1 => 'Tamron SP AF 90mm F2.5', #JD |
529
|
|
|
|
|
|
|
45741.2 => 'Tokina RF 500mm F8.0 x2', #JD |
530
|
|
|
|
|
|
|
45741.3 => 'Tokina 300mm F2.8 x2', |
531
|
|
|
|
|
|
|
45751 => '1.4x Teleconverter', #18 |
532
|
|
|
|
|
|
|
45851 => 'Tamron SP AF 300mm F2.8 LD IF', #11 |
533
|
|
|
|
|
|
|
45861 => 'Tamron SP AF 35-105mm F2.8 LD Aspherical IF', #Fredrik Agert |
534
|
|
|
|
|
|
|
45871 => 'Tamron AF 70-210mm F2.8 SP LD', #Fabio Suprani |
535
|
|
|
|
|
|
|
# 48128: the Speed Booster Ultra appears to report type 48128 (=0xbc00) |
536
|
|
|
|
|
|
|
# - this is the base to which the Canon LensType is added |
537
|
|
|
|
|
|
|
48128 => 'Metabones Canon EF Speed Booster Ultra', #JR (to this, add Canon LensType) |
538
|
|
|
|
|
|
|
# 61184: older firmware versions of both the Speed Booster and the Smart Adapter |
539
|
|
|
|
|
|
|
# report type 61184 (=0xef00), and add only the lower byte of the Canon LensType (ref JR). |
540
|
|
|
|
|
|
|
# For newer firmware versions this is only used by the Smart Adapter, and |
541
|
|
|
|
|
|
|
# the full Canon LensType code is added - PH |
542
|
|
|
|
|
|
|
# the metabones adapter translates Canon L -> G, II -> II, USM -> SSM, IS -> OSS (ref JR) |
543
|
|
|
|
|
|
|
# This offset is used by Metabones, Fotodiox, Sigma MC-11 EF-E and Viltrox Canon EF adapters. |
544
|
|
|
|
|
|
|
61184 => 'Canon EF Adapter', #JR (to this, add Canon LensType) |
545
|
|
|
|
|
|
|
# 65280 = 0xff00 |
546
|
|
|
|
|
|
|
65280 => 'Sigma 16mm F2.8 Filtermatic Fisheye', #IB |
547
|
|
|
|
|
|
|
# all M42-type lenses give a value of 65535 (and FocalLength=0, FNumber=1) |
548
|
|
|
|
|
|
|
65535 => 'E-Mount, T-Mount, Other Lens or no lens', #JD/JR |
549
|
|
|
|
|
|
|
'65535.1' => 'Arax MC 35mm F2.8 Tilt+Shift', #JD |
550
|
|
|
|
|
|
|
'65535.2' => 'Arax MC 80mm F2.8 Tilt+Shift', #JD |
551
|
|
|
|
|
|
|
'65535.3' => 'Zenitar MF 16mm F2.8 Fisheye M42', #JD |
552
|
|
|
|
|
|
|
'65535.4' => 'Samyang 500mm Mirror F8.0', #19 |
553
|
|
|
|
|
|
|
'65535.5' => 'Pentacon Auto 135mm F2.8', #19 |
554
|
|
|
|
|
|
|
'65535.6' => 'Pentacon Auto 29mm F2.8', #19 |
555
|
|
|
|
|
|
|
'65535.7' => 'Helios 44-2 58mm F2.0', #19 |
556
|
|
|
|
|
|
|
); |
557
|
|
|
|
|
|
|
|
558
|
|
|
|
|
|
|
%minoltaTeleconverters = ( |
559
|
|
|
|
|
|
|
0x00 => 'None', |
560
|
|
|
|
|
|
|
0x04 => 'Minolta/Sony AF 1.4x APO (D) (0x04)', # (Andy Johnson, A77 APO and APO D) |
561
|
|
|
|
|
|
|
0x05 => 'Minolta/Sony AF 2x APO (D) (0x05)', # (Andy Johnson, A77 APO D) |
562
|
|
|
|
|
|
|
0x48 => 'Minolta/Sony AF 2x APO (D)', |
563
|
|
|
|
|
|
|
# 0x48 => 'Sony 2x Teleconverter (SAL20TC)', (ref JR) |
564
|
|
|
|
|
|
|
0x50 => 'Minolta AF 2x APO II', |
565
|
|
|
|
|
|
|
0x60 => 'Minolta AF 2x APO',#26 |
566
|
|
|
|
|
|
|
0x88 => 'Minolta/Sony AF 1.4x APO (D)', |
567
|
|
|
|
|
|
|
# 0x88 => 'Sony 1.4x Teleconverter (SAL14TC)', (ref JR) |
568
|
|
|
|
|
|
|
0x90 => 'Minolta AF 1.4x APO II', |
569
|
|
|
|
|
|
|
0xa0 => 'Minolta AF 1.4x APO',#26 |
570
|
|
|
|
|
|
|
); |
571
|
|
|
|
|
|
|
|
572
|
|
|
|
|
|
|
%minoltaColorMode = ( |
573
|
|
|
|
|
|
|
0 => 'Natural color', |
574
|
|
|
|
|
|
|
1 => 'Black & White', |
575
|
|
|
|
|
|
|
2 => 'Vivid color', |
576
|
|
|
|
|
|
|
3 => 'Solarization', |
577
|
|
|
|
|
|
|
4 => 'Adobe RGB', |
578
|
|
|
|
|
|
|
5 => 'Sepia', #10 |
579
|
|
|
|
|
|
|
9 => 'Natural', #10 |
580
|
|
|
|
|
|
|
12 => 'Portrait', #10 |
581
|
|
|
|
|
|
|
13 => 'Natural sRGB', |
582
|
|
|
|
|
|
|
14 => 'Natural+ sRGB', |
583
|
|
|
|
|
|
|
15 => 'Landscape', #10 |
584
|
|
|
|
|
|
|
16 => 'Evening', #10 |
585
|
|
|
|
|
|
|
17 => 'Night Scene', #10 |
586
|
|
|
|
|
|
|
18 => 'Night Portrait', #10 |
587
|
|
|
|
|
|
|
0x84 => 'Embed Adobe RGB', |
588
|
|
|
|
|
|
|
); |
589
|
|
|
|
|
|
|
|
590
|
|
|
|
|
|
|
%sonyColorMode = ( #15 |
591
|
|
|
|
|
|
|
0 => 'Standard', |
592
|
|
|
|
|
|
|
1 => 'Vivid', #PH |
593
|
|
|
|
|
|
|
2 => 'Portrait', |
594
|
|
|
|
|
|
|
3 => 'Landscape', |
595
|
|
|
|
|
|
|
4 => 'Sunset', |
596
|
|
|
|
|
|
|
5 => 'Night View/Portrait', #(portrait if flash is on) |
597
|
|
|
|
|
|
|
6 => 'B&W', |
598
|
|
|
|
|
|
|
7 => 'Adobe RGB', |
599
|
|
|
|
|
|
|
12 => 'Neutral', # Sony |
600
|
|
|
|
|
|
|
13 => 'Clear', #JR (NC) |
601
|
|
|
|
|
|
|
14 => 'Deep', #JR |
602
|
|
|
|
|
|
|
15 => 'Light', #JR (NC) |
603
|
|
|
|
|
|
|
16 => 'Autumn Leaves', #JR (NC) |
604
|
|
|
|
|
|
|
17 => 'Sepia', #JR |
605
|
|
|
|
|
|
|
18 => 'FL', #JR (7SM3) |
606
|
|
|
|
|
|
|
19 => 'Vivid 2', #JR (7SM3) |
607
|
|
|
|
|
|
|
20 => 'IN', #JR (7SM3) |
608
|
|
|
|
|
|
|
21 => 'SH', #JR (7SM3) |
609
|
|
|
|
|
|
|
100 => 'Neutral', #JD |
610
|
|
|
|
|
|
|
101 => 'Clear', #JD |
611
|
|
|
|
|
|
|
102 => 'Deep', #JD |
612
|
|
|
|
|
|
|
103 => 'Light', #JD |
613
|
|
|
|
|
|
|
104 => 'Night View', #JD |
614
|
|
|
|
|
|
|
105 => 'Autumn Leaves', #JD |
615
|
|
|
|
|
|
|
255 => 'Off', #JR (new for ILCE-7SM3, July 2020) |
616
|
|
|
|
|
|
|
0xffffffff => 'n/a', #PH |
617
|
|
|
|
|
|
|
); |
618
|
|
|
|
|
|
|
|
619
|
|
|
|
|
|
|
%minoltaSceneMode = ( |
620
|
|
|
|
|
|
|
0 => 'Standard', |
621
|
|
|
|
|
|
|
1 => 'Portrait', |
622
|
|
|
|
|
|
|
2 => 'Text', |
623
|
|
|
|
|
|
|
3 => 'Night Scene', |
624
|
|
|
|
|
|
|
4 => 'Sunset', |
625
|
|
|
|
|
|
|
5 => 'Sports', |
626
|
|
|
|
|
|
|
6 => 'Landscape', |
627
|
|
|
|
|
|
|
7 => 'Night Portrait', #JD |
628
|
|
|
|
|
|
|
8 => 'Macro', |
629
|
|
|
|
|
|
|
9 => 'Super Macro', |
630
|
|
|
|
|
|
|
16 => 'Auto', # (RX100 'Intelligent Auto' - PH) |
631
|
|
|
|
|
|
|
17 => 'Night View/Portrait', |
632
|
|
|
|
|
|
|
18 => 'Sweep Panorama', #PH (SLT-A55V) |
633
|
|
|
|
|
|
|
19 => 'Handheld Night Shot', #PH |
634
|
|
|
|
|
|
|
20 => 'Anti Motion Blur', #PH |
635
|
|
|
|
|
|
|
21 => 'Cont. Priority AE', #PH |
636
|
|
|
|
|
|
|
22 => 'Auto+', |
637
|
|
|
|
|
|
|
23 => '3D Sweep Panorama', #PH (SLT-A55V) |
638
|
|
|
|
|
|
|
24 => 'Superior Auto', #28 |
639
|
|
|
|
|
|
|
25 => 'High Sensitivity', #28 |
640
|
|
|
|
|
|
|
26 => 'Fireworks', #28 |
641
|
|
|
|
|
|
|
27 => 'Food', #28 |
642
|
|
|
|
|
|
|
28 => 'Pet', #28 |
643
|
|
|
|
|
|
|
33 => 'HDR', #JR |
644
|
|
|
|
|
|
|
0xffff => 'n/a', #PH |
645
|
|
|
|
|
|
|
); |
646
|
|
|
|
|
|
|
|
647
|
|
|
|
|
|
|
# tag information for AFStatus tags (ref 20) |
648
|
|
|
|
|
|
|
%afStatusInfo = ( |
649
|
|
|
|
|
|
|
Format => 'int16s', |
650
|
|
|
|
|
|
|
# 0=in focus, -32768=out of focus, -ve=front focus, +ve=back focus |
651
|
|
|
|
|
|
|
PrintConvColumns => 2, |
652
|
|
|
|
|
|
|
PrintConv => { |
653
|
|
|
|
|
|
|
0 => 'In Focus', |
654
|
|
|
|
|
|
|
-32768 => 'Out of Focus', |
655
|
|
|
|
|
|
|
OTHER => sub { |
656
|
|
|
|
|
|
|
my ($val, $inv) = @_; |
657
|
|
|
|
|
|
|
$inv and $val =~ /([-+]?\d+)/, return $1; |
658
|
|
|
|
|
|
|
return $val < 0 ? "Front Focus ($val)" : "Back Focus (+$val)"; |
659
|
|
|
|
|
|
|
}, |
660
|
|
|
|
|
|
|
}, |
661
|
|
|
|
|
|
|
); |
662
|
|
|
|
|
|
|
|
663
|
|
|
|
|
|
|
my %exposureIndicator = ( |
664
|
|
|
|
|
|
|
0 => 'Not Indicated', |
665
|
|
|
|
|
|
|
1 => 'Under Scale', |
666
|
|
|
|
|
|
|
119 => 'Bottom of Scale', |
667
|
|
|
|
|
|
|
120 => '-2.0', |
668
|
|
|
|
|
|
|
121 => '-1.7', |
669
|
|
|
|
|
|
|
122 => '-1.5', |
670
|
|
|
|
|
|
|
123 => '-1.3', |
671
|
|
|
|
|
|
|
124 => '-1.0', |
672
|
|
|
|
|
|
|
125 => '-0.7', |
673
|
|
|
|
|
|
|
126 => '-0.5', |
674
|
|
|
|
|
|
|
127 => '-0.3', |
675
|
|
|
|
|
|
|
128 => '0', |
676
|
|
|
|
|
|
|
129 => '+0.3', |
677
|
|
|
|
|
|
|
130 => '+0.5', |
678
|
|
|
|
|
|
|
131 => '+0.7', |
679
|
|
|
|
|
|
|
132 => '+1.0', |
680
|
|
|
|
|
|
|
133 => '+1.3', |
681
|
|
|
|
|
|
|
134 => '+1.5', |
682
|
|
|
|
|
|
|
135 => '+1.7', |
683
|
|
|
|
|
|
|
136 => '+2.0', |
684
|
|
|
|
|
|
|
253 => 'Top of Scale', |
685
|
|
|
|
|
|
|
254 => 'Over Scale', |
686
|
|
|
|
|
|
|
); |
687
|
|
|
|
|
|
|
|
688
|
|
|
|
|
|
|
my %onOff = ( 0 => 'On', 1 => 'Off' ); |
689
|
|
|
|
|
|
|
my %offOn = ( 0 => 'Off', 1 => 'On' ); |
690
|
|
|
|
|
|
|
|
691
|
|
|
|
|
|
|
# Minolta tag table |
692
|
|
|
|
|
|
|
%Image::ExifTool::Minolta::Main = ( |
693
|
|
|
|
|
|
|
WRITE_PROC => \&Image::ExifTool::Exif::WriteExif, |
694
|
|
|
|
|
|
|
CHECK_PROC => \&Image::ExifTool::Exif::CheckExif, |
695
|
|
|
|
|
|
|
WRITABLE => 1, |
696
|
|
|
|
|
|
|
GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' }, |
697
|
|
|
|
|
|
|
0x0000 => { |
698
|
|
|
|
|
|
|
Name => 'MakerNoteVersion', |
699
|
|
|
|
|
|
|
Writable => 'undef', |
700
|
|
|
|
|
|
|
Count => 4, |
701
|
|
|
|
|
|
|
}, |
702
|
|
|
|
|
|
|
0x0001 => { |
703
|
|
|
|
|
|
|
Name => 'MinoltaCameraSettingsOld', |
704
|
|
|
|
|
|
|
SubDirectory => { |
705
|
|
|
|
|
|
|
TagTable => 'Image::ExifTool::Minolta::CameraSettings', |
706
|
|
|
|
|
|
|
ByteOrder => 'BigEndian', |
707
|
|
|
|
|
|
|
}, |
708
|
|
|
|
|
|
|
}, |
709
|
|
|
|
|
|
|
0x0003 => { |
710
|
|
|
|
|
|
|
Name => 'MinoltaCameraSettings', |
711
|
|
|
|
|
|
|
# These camera settings are different for the DiMAGE X31 |
712
|
|
|
|
|
|
|
Condition => '$self->{Model} ne "DiMAGE X31"', |
713
|
|
|
|
|
|
|
SubDirectory => { |
714
|
|
|
|
|
|
|
TagTable => 'Image::ExifTool::Minolta::CameraSettings', |
715
|
|
|
|
|
|
|
ByteOrder => 'BigEndian', |
716
|
|
|
|
|
|
|
}, |
717
|
|
|
|
|
|
|
}, |
718
|
|
|
|
|
|
|
0x0004 => { #8 |
719
|
|
|
|
|
|
|
Name => 'MinoltaCameraSettings7D', |
720
|
|
|
|
|
|
|
SubDirectory => { |
721
|
|
|
|
|
|
|
TagTable => 'Image::ExifTool::Minolta::CameraSettings7D', |
722
|
|
|
|
|
|
|
ByteOrder => 'BigEndian', |
723
|
|
|
|
|
|
|
}, |
724
|
|
|
|
|
|
|
}, |
725
|
|
|
|
|
|
|
0x0010 => { #20 (count: 256) |
726
|
|
|
|
|
|
|
Name => 'CameraInfoA100', |
727
|
|
|
|
|
|
|
Condition => '$$self{Model} eq "DSLR-A100"', |
728
|
|
|
|
|
|
|
SubDirectory => { |
729
|
|
|
|
|
|
|
TagTable => 'Image::ExifTool::Minolta::CameraInfoA100', |
730
|
|
|
|
|
|
|
ByteOrder => 'LittleEndian', |
731
|
|
|
|
|
|
|
}, |
732
|
|
|
|
|
|
|
}, |
733
|
|
|
|
|
|
|
# it appears that image stabilization is on if this tag exists (ref 2), |
734
|
|
|
|
|
|
|
# but it is an 8kB binary data block! |
735
|
|
|
|
|
|
|
0x0018 => [ |
736
|
|
|
|
|
|
|
{ |
737
|
|
|
|
|
|
|
Name => 'ISInfoA100', |
738
|
|
|
|
|
|
|
Condition => '$self->{Model} eq "DSLR-A100"', |
739
|
|
|
|
|
|
|
SubDirectory => { |
740
|
|
|
|
|
|
|
TagTable => 'Image::ExifTool::Minolta::ISInfoA100', |
741
|
|
|
|
|
|
|
ByteOrder => 'BigEndian', |
742
|
|
|
|
|
|
|
}, |
743
|
|
|
|
|
|
|
},{ |
744
|
|
|
|
|
|
|
Name => 'ImageStabilization', |
745
|
|
|
|
|
|
|
Condition => '$self->{Model} =~ /^DiMAGE (A1|A2|X1)$/', |
746
|
|
|
|
|
|
|
Notes => q{ |
747
|
|
|
|
|
|
|
a block of binary data which exists in DiMAGE A2 (and A1/X1?) images only if |
748
|
|
|
|
|
|
|
image stabilization is enabled |
749
|
|
|
|
|
|
|
}, |
750
|
|
|
|
|
|
|
ValueConv => '"On"', |
751
|
|
|
|
|
|
|
}, |
752
|
|
|
|
|
|
|
], |
753
|
|
|
|
|
|
|
0x0020 => { |
754
|
|
|
|
|
|
|
Name => 'WBInfoA100', |
755
|
|
|
|
|
|
|
Condition => '$$self{Model} eq "DSLR-A100"', |
756
|
|
|
|
|
|
|
Notes => 'currently decoded only for the Sony A100', |
757
|
|
|
|
|
|
|
SubDirectory => { |
758
|
|
|
|
|
|
|
TagTable => 'Image::ExifTool::Minolta::WBInfoA100', |
759
|
|
|
|
|
|
|
ByteOrder => 'BigEndian', |
760
|
|
|
|
|
|
|
}, |
761
|
|
|
|
|
|
|
}, |
762
|
|
|
|
|
|
|
0x0040 => { |
763
|
|
|
|
|
|
|
Name => 'CompressedImageSize', |
764
|
|
|
|
|
|
|
Writable => 'int32u', |
765
|
|
|
|
|
|
|
}, |
766
|
|
|
|
|
|
|
0x0081 => { |
767
|
|
|
|
|
|
|
# JPEG preview found in DiMAGE 7 images |
768
|
|
|
|
|
|
|
%Image::ExifTool::previewImageTagInfo, |
769
|
|
|
|
|
|
|
Groups => { 2 => 'Preview' }, |
770
|
|
|
|
|
|
|
Permanent => 1, # don't add this to a file |
771
|
|
|
|
|
|
|
}, |
772
|
|
|
|
|
|
|
0x0088 => { |
773
|
|
|
|
|
|
|
Name => 'PreviewImageStart', |
774
|
|
|
|
|
|
|
Flags => 'IsOffset', |
775
|
|
|
|
|
|
|
OffsetPair => 0x0089, # point to associated byte count |
776
|
|
|
|
|
|
|
DataTag => 'PreviewImage', |
777
|
|
|
|
|
|
|
Writable => 'int32u', |
778
|
|
|
|
|
|
|
WriteGroup => 'MakerNotes', |
779
|
|
|
|
|
|
|
Protected => 2, |
780
|
|
|
|
|
|
|
# Note: Sony also uses this tag in A100 ARW images, but it points |
781
|
|
|
|
|
|
|
# to the same data as JpgFromRaw |
782
|
|
|
|
|
|
|
}, |
783
|
|
|
|
|
|
|
0x0089 => { |
784
|
|
|
|
|
|
|
Name => 'PreviewImageLength', |
785
|
|
|
|
|
|
|
OffsetPair => 0x0088, # point to associated offset |
786
|
|
|
|
|
|
|
DataTag => 'PreviewImage', |
787
|
|
|
|
|
|
|
Writable => 'int32u', |
788
|
|
|
|
|
|
|
WriteGroup => 'MakerNotes', |
789
|
|
|
|
|
|
|
Protected => 2, |
790
|
|
|
|
|
|
|
}, |
791
|
|
|
|
|
|
|
0x0100 => { #10 |
792
|
|
|
|
|
|
|
Name => 'SceneMode', |
793
|
|
|
|
|
|
|
Writable => 'int32u', |
794
|
|
|
|
|
|
|
PrintConv => \%minoltaSceneMode, |
795
|
|
|
|
|
|
|
}, |
796
|
|
|
|
|
|
|
0x0101 => [ |
797
|
|
|
|
|
|
|
{ |
798
|
|
|
|
|
|
|
Name => 'ColorMode', |
799
|
|
|
|
|
|
|
Condition => '$self->{Make} !~ /^SONY/', |
800
|
|
|
|
|
|
|
Priority => 0, # Other ColorMode is more reliable for A2 |
801
|
|
|
|
|
|
|
Writable => 'int32u', |
802
|
|
|
|
|
|
|
PrintConv => \%minoltaColorMode, |
803
|
|
|
|
|
|
|
}, |
804
|
|
|
|
|
|
|
{ #15 |
805
|
|
|
|
|
|
|
Name => 'ColorMode', |
806
|
|
|
|
|
|
|
Writable => 'int32u', |
807
|
|
|
|
|
|
|
Notes => 'Sony models', |
808
|
|
|
|
|
|
|
PrintConv => \%sonyColorMode, |
809
|
|
|
|
|
|
|
}, |
810
|
|
|
|
|
|
|
], |
811
|
|
|
|
|
|
|
0x0102 => { |
812
|
|
|
|
|
|
|
Name => 'MinoltaQuality', |
813
|
|
|
|
|
|
|
Writable => 'int32u', |
814
|
|
|
|
|
|
|
# PrintConv strings conform with Minolta reference manual (ref NJ) |
815
|
|
|
|
|
|
|
# (note that Minolta calls an uncompressed TIFF image "Super fine") |
816
|
|
|
|
|
|
|
PrintConv => { |
817
|
|
|
|
|
|
|
0 => 'Raw', |
818
|
|
|
|
|
|
|
1 => 'Super Fine', |
819
|
|
|
|
|
|
|
2 => 'Fine', |
820
|
|
|
|
|
|
|
3 => 'Standard', |
821
|
|
|
|
|
|
|
4 => 'Economy', |
822
|
|
|
|
|
|
|
5 => 'Extra fine', |
823
|
|
|
|
|
|
|
}, |
824
|
|
|
|
|
|
|
}, |
825
|
|
|
|
|
|
|
# (0x0103 is the same as 0x0102 above) -- this is true for some |
826
|
|
|
|
|
|
|
# cameras (A2/7Hi), but not others - PH |
827
|
|
|
|
|
|
|
0x0103 => [ |
828
|
|
|
|
|
|
|
{ |
829
|
|
|
|
|
|
|
Name => 'MinoltaQuality', |
830
|
|
|
|
|
|
|
Writable => 'int32u', |
831
|
|
|
|
|
|
|
Condition => '$self->{Model} =~ /^DiMAGE (A2|7Hi)$/', |
832
|
|
|
|
|
|
|
Notes => 'quality for DiMAGE A2/7Hi', |
833
|
|
|
|
|
|
|
Priority => 0, # lower priority because this doesn't work for A200 |
834
|
|
|
|
|
|
|
PrintConv => { #NJ |
835
|
|
|
|
|
|
|
0 => 'Raw', |
836
|
|
|
|
|
|
|
1 => 'Super Fine', |
837
|
|
|
|
|
|
|
2 => 'Fine', |
838
|
|
|
|
|
|
|
3 => 'Standard', |
839
|
|
|
|
|
|
|
4 => 'Economy', |
840
|
|
|
|
|
|
|
5 => 'Extra fine', |
841
|
|
|
|
|
|
|
}, |
842
|
|
|
|
|
|
|
}, |
843
|
|
|
|
|
|
|
{ #PH |
844
|
|
|
|
|
|
|
Name => 'MinoltaImageSize', |
845
|
|
|
|
|
|
|
Writable => 'int32u', |
846
|
|
|
|
|
|
|
Condition => '$self->{Model} !~ /^DiMAGE A200$/', |
847
|
|
|
|
|
|
|
Notes => 'image size for other models except A200', |
848
|
|
|
|
|
|
|
PrintConv => { |
849
|
|
|
|
|
|
|
1 => '1600x1200', |
850
|
|
|
|
|
|
|
2 => '1280x960', |
851
|
|
|
|
|
|
|
3 => '640x480', |
852
|
|
|
|
|
|
|
5 => '2560x1920', |
853
|
|
|
|
|
|
|
6 => '2272x1704', |
854
|
|
|
|
|
|
|
7 => '2048x1536', |
855
|
|
|
|
|
|
|
}, |
856
|
|
|
|
|
|
|
}, |
857
|
|
|
|
|
|
|
], |
858
|
|
|
|
|
|
|
0x0104 => { #14 |
859
|
|
|
|
|
|
|
Name => 'FlashExposureComp', |
860
|
|
|
|
|
|
|
Description => 'Flash Exposure Compensation', |
861
|
|
|
|
|
|
|
Writable => 'rational64s', |
862
|
|
|
|
|
|
|
}, |
863
|
|
|
|
|
|
|
0x0105 => { #10 |
864
|
|
|
|
|
|
|
Name => 'Teleconverter', |
865
|
|
|
|
|
|
|
Writable => 'int32u', |
866
|
|
|
|
|
|
|
PrintHex => 1, |
867
|
|
|
|
|
|
|
PrintConv => \%minoltaTeleconverters, |
868
|
|
|
|
|
|
|
}, |
869
|
|
|
|
|
|
|
0x0107 => { #8 |
870
|
|
|
|
|
|
|
Name => 'ImageStabilization', |
871
|
|
|
|
|
|
|
Writable => 'int32u', |
872
|
|
|
|
|
|
|
PrintConv => { |
873
|
|
|
|
|
|
|
1 => 'Off', |
874
|
|
|
|
|
|
|
5 => 'On', |
875
|
|
|
|
|
|
|
}, |
876
|
|
|
|
|
|
|
}, |
877
|
|
|
|
|
|
|
0x0109 => { #20 |
878
|
|
|
|
|
|
|
Name => 'RawAndJpgRecording', |
879
|
|
|
|
|
|
|
Writable => 'int32u', |
880
|
|
|
|
|
|
|
PrintConv => \%offOn, |
881
|
|
|
|
|
|
|
}, |
882
|
|
|
|
|
|
|
0x010a => { |
883
|
|
|
|
|
|
|
Name => 'ZoneMatching', |
884
|
|
|
|
|
|
|
Writable => 'int32u', |
885
|
|
|
|
|
|
|
PrintConv => { |
886
|
|
|
|
|
|
|
0 => 'ISO Setting Used', |
887
|
|
|
|
|
|
|
1 => 'High Key', |
888
|
|
|
|
|
|
|
2 => 'Low Key', |
889
|
|
|
|
|
|
|
}, |
890
|
|
|
|
|
|
|
}, |
891
|
|
|
|
|
|
|
0x010b => { |
892
|
|
|
|
|
|
|
Name => 'ColorTemperature', |
893
|
|
|
|
|
|
|
Writable => 'int32u', |
894
|
|
|
|
|
|
|
}, |
895
|
|
|
|
|
|
|
0x010c => { #3 (Alpha 7) |
896
|
|
|
|
|
|
|
Name => 'LensType', |
897
|
|
|
|
|
|
|
Writable => 'int32u', |
898
|
|
|
|
|
|
|
SeparateTable => 1, |
899
|
|
|
|
|
|
|
ValueConvInv => 'int($val)', # (must truncate decimal part) |
900
|
|
|
|
|
|
|
PrintConv => \%minoltaLensTypes, |
901
|
|
|
|
|
|
|
}, |
902
|
|
|
|
|
|
|
# 0x010e - WhiteBalance according to ref #10 |
903
|
|
|
|
|
|
|
0x0111 => { #20 |
904
|
|
|
|
|
|
|
Name => 'ColorCompensationFilter', |
905
|
|
|
|
|
|
|
Writable => 'int32s', |
906
|
|
|
|
|
|
|
Notes => 'ranges from -2 for green to +2 for magenta', |
907
|
|
|
|
|
|
|
}, |
908
|
|
|
|
|
|
|
0x0112 => { #PH (from Sony tags, NC) |
909
|
|
|
|
|
|
|
Name => 'WhiteBalanceFineTune', |
910
|
|
|
|
|
|
|
Format => 'int32s', |
911
|
|
|
|
|
|
|
Writable => 'int32u', |
912
|
|
|
|
|
|
|
}, |
913
|
|
|
|
|
|
|
0x0113 => { #PH |
914
|
|
|
|
|
|
|
Name => 'ImageStabilization', |
915
|
|
|
|
|
|
|
Condition => '$self->{Model} eq "DSLR-A100"', |
916
|
|
|
|
|
|
|
Notes => 'valid for Sony A100 only', |
917
|
|
|
|
|
|
|
Writable => 'int32u', |
918
|
|
|
|
|
|
|
PrintConv => \%offOn, |
919
|
|
|
|
|
|
|
}, |
920
|
|
|
|
|
|
|
0x0114 => [ |
921
|
|
|
|
|
|
|
{ #8 |
922
|
|
|
|
|
|
|
Name => 'MinoltaCameraSettings5D', |
923
|
|
|
|
|
|
|
Condition => '$self->{Model} =~ /^(DYNAX 5D|MAXXUM 5D|ALPHA SWEET)/', |
924
|
|
|
|
|
|
|
SubDirectory => { |
925
|
|
|
|
|
|
|
TagTable => 'Image::ExifTool::Minolta::CameraSettings5D', |
926
|
|
|
|
|
|
|
ByteOrder => 'BigEndian', |
927
|
|
|
|
|
|
|
}, |
928
|
|
|
|
|
|
|
}, |
929
|
|
|
|
|
|
|
{ #PH |
930
|
|
|
|
|
|
|
Name => 'CameraSettingsA100', |
931
|
|
|
|
|
|
|
Condition => '$self->{Model} eq "DSLR-A100"', |
932
|
|
|
|
|
|
|
SubDirectory => { |
933
|
|
|
|
|
|
|
TagTable => 'Image::ExifTool::Minolta::CameraSettingsA100', |
934
|
|
|
|
|
|
|
ByteOrder => 'BigEndian', # required because order differs for ARW and JPG images |
935
|
|
|
|
|
|
|
}, |
936
|
|
|
|
|
|
|
}, |
937
|
|
|
|
|
|
|
], |
938
|
|
|
|
|
|
|
0x0115 => { #20 |
939
|
|
|
|
|
|
|
Name => 'WhiteBalance', |
940
|
|
|
|
|
|
|
Writable => 'int32u', |
941
|
|
|
|
|
|
|
PrintHex => 1, |
942
|
|
|
|
|
|
|
PrintConv => { |
943
|
|
|
|
|
|
|
0x00 => 'Auto', |
944
|
|
|
|
|
|
|
0x01 => 'Color Temperature/Color Filter', |
945
|
|
|
|
|
|
|
0x10 => 'Daylight', |
946
|
|
|
|
|
|
|
0x20 => 'Cloudy', |
947
|
|
|
|
|
|
|
0x30 => 'Shade', |
948
|
|
|
|
|
|
|
0x40 => 'Tungsten', |
949
|
|
|
|
|
|
|
0x50 => 'Flash', |
950
|
|
|
|
|
|
|
0x60 => 'Fluorescent', |
951
|
|
|
|
|
|
|
0x70 => 'Custom', |
952
|
|
|
|
|
|
|
}, |
953
|
|
|
|
|
|
|
}, |
954
|
|
|
|
|
|
|
0x0e00 => { |
955
|
|
|
|
|
|
|
Name => 'PrintIM', |
956
|
|
|
|
|
|
|
Description => 'Print Image Matching', |
957
|
|
|
|
|
|
|
Writable => 0, |
958
|
|
|
|
|
|
|
SubDirectory => { |
959
|
|
|
|
|
|
|
TagTable => 'Image::ExifTool::PrintIM::Main', |
960
|
|
|
|
|
|
|
}, |
961
|
|
|
|
|
|
|
}, |
962
|
|
|
|
|
|
|
0x0f00 => { |
963
|
|
|
|
|
|
|
Name => 'MinoltaCameraSettings2', |
964
|
|
|
|
|
|
|
Writable => 0, |
965
|
|
|
|
|
|
|
Binary => 1, |
966
|
|
|
|
|
|
|
}, |
967
|
|
|
|
|
|
|
); |
968
|
|
|
|
|
|
|
|
969
|
|
|
|
|
|
|
%Image::ExifTool::Minolta::CameraSettings = ( |
970
|
|
|
|
|
|
|
PROCESS_PROC => \&Image::ExifTool::ProcessBinaryData, |
971
|
|
|
|
|
|
|
WRITE_PROC => \&Image::ExifTool::WriteBinaryData, |
972
|
|
|
|
|
|
|
CHECK_PROC => \&Image::ExifTool::CheckBinaryData, |
973
|
|
|
|
|
|
|
WRITABLE => 1, |
974
|
|
|
|
|
|
|
PRIORITY => 0, # not as reliable as other tags |
975
|
|
|
|
|
|
|
GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' }, |
976
|
|
|
|
|
|
|
FORMAT => 'int32u', |
977
|
|
|
|
|
|
|
FIRST_ENTRY => 0, |
978
|
|
|
|
|
|
|
NOTES => q{ |
979
|
|
|
|
|
|
|
There is some variability in CameraSettings information between different |
980
|
|
|
|
|
|
|
models (and sometimes even between different firmware versions), so this |
981
|
|
|
|
|
|
|
information may not be as reliable as it should be. Because of this, tags |
982
|
|
|
|
|
|
|
in the following tables are set to lower priority to prevent them from |
983
|
|
|
|
|
|
|
superseding the values of same-named tags in other locations when duplicate |
984
|
|
|
|
|
|
|
tags are disabled. |
985
|
|
|
|
|
|
|
}, |
986
|
|
|
|
|
|
|
1 => { |
987
|
|
|
|
|
|
|
Name => 'ExposureMode', |
988
|
|
|
|
|
|
|
PrintConv => { |
989
|
|
|
|
|
|
|
0 => 'Program', |
990
|
|
|
|
|
|
|
1 => 'Aperture Priority', |
991
|
|
|
|
|
|
|
2 => 'Shutter Priority', |
992
|
|
|
|
|
|
|
3 => 'Manual', |
993
|
|
|
|
|
|
|
}, |
994
|
|
|
|
|
|
|
}, |
995
|
|
|
|
|
|
|
2 => { |
996
|
|
|
|
|
|
|
Name => 'FlashMode', |
997
|
|
|
|
|
|
|
PrintConv => { |
998
|
|
|
|
|
|
|
0 => 'Fill flash', |
999
|
|
|
|
|
|
|
1 => 'Red-eye reduction', |
1000
|
|
|
|
|
|
|
2 => 'Rear flash sync', |
1001
|
|
|
|
|
|
|
3 => 'Wireless', |
1002
|
|
|
|
|
|
|
4 => 'Off?', #PH |
1003
|
|
|
|
|
|
|
}, |
1004
|
|
|
|
|
|
|
}, |
1005
|
|
|
|
|
|
|
3 => { |
1006
|
|
|
|
|
|
|
Name => 'WhiteBalance', |
1007
|
|
|
|
|
|
|
PrintConv => 'Image::ExifTool::Minolta::ConvertWhiteBalance($val)', |
1008
|
|
|
|
|
|
|
}, |
1009
|
|
|
|
|
|
|
4 => { |
1010
|
|
|
|
|
|
|
Name => 'MinoltaImageSize', |
1011
|
|
|
|
|
|
|
PrintConv => { |
1012
|
|
|
|
|
|
|
0 => 'Full', |
1013
|
|
|
|
|
|
|
1 => '1600x1200', |
1014
|
|
|
|
|
|
|
2 => '1280x960', |
1015
|
|
|
|
|
|
|
3 => '640x480', |
1016
|
|
|
|
|
|
|
6 => '2080x1560', #PH (A2) |
1017
|
|
|
|
|
|
|
7 => '2560x1920', #PH (A2) |
1018
|
|
|
|
|
|
|
8 => '3264x2176', #PH (A2) |
1019
|
|
|
|
|
|
|
}, |
1020
|
|
|
|
|
|
|
}, |
1021
|
|
|
|
|
|
|
5 => { |
1022
|
|
|
|
|
|
|
Name => 'MinoltaQuality', |
1023
|
|
|
|
|
|
|
PrintConv => { #NJ |
1024
|
|
|
|
|
|
|
0 => 'Raw', |
1025
|
|
|
|
|
|
|
1 => 'Super Fine', |
1026
|
|
|
|
|
|
|
2 => 'Fine', |
1027
|
|
|
|
|
|
|
3 => 'Standard', |
1028
|
|
|
|
|
|
|
4 => 'Economy', |
1029
|
|
|
|
|
|
|
5 => 'Extra Fine', |
1030
|
|
|
|
|
|
|
}, |
1031
|
|
|
|
|
|
|
}, |
1032
|
|
|
|
|
|
|
6 => { |
1033
|
|
|
|
|
|
|
Name => 'DriveMode', |
1034
|
|
|
|
|
|
|
PrintConv => { |
1035
|
|
|
|
|
|
|
0 => 'Single', |
1036
|
|
|
|
|
|
|
1 => 'Continuous', |
1037
|
|
|
|
|
|
|
2 => 'Self-timer', |
1038
|
|
|
|
|
|
|
4 => 'Bracketing', |
1039
|
|
|
|
|
|
|
5 => 'Interval', |
1040
|
|
|
|
|
|
|
6 => 'UHS continuous', |
1041
|
|
|
|
|
|
|
7 => 'HS continuous', |
1042
|
|
|
|
|
|
|
}, |
1043
|
|
|
|
|
|
|
}, |
1044
|
|
|
|
|
|
|
7 => { |
1045
|
|
|
|
|
|
|
Name => 'MeteringMode', |
1046
|
|
|
|
|
|
|
PrintConv => { |
1047
|
|
|
|
|
|
|
0 => 'Multi-segment', |
1048
|
|
|
|
|
|
|
1 => 'Center-weighted average', |
1049
|
|
|
|
|
|
|
2 => 'Spot', |
1050
|
|
|
|
|
|
|
}, |
1051
|
|
|
|
|
|
|
}, |
1052
|
|
|
|
|
|
|
8 => { |
1053
|
|
|
|
|
|
|
Name => 'ISO', |
1054
|
|
|
|
|
|
|
ValueConv => '2 ** (($val-48)/8) * 100', |
1055
|
|
|
|
|
|
|
ValueConvInv => '48 + 8*log($val/100)/log(2)', |
1056
|
|
|
|
|
|
|
PrintConv => 'int($val + 0.5)', |
1057
|
|
|
|
|
|
|
PrintConvInv => '$val', |
1058
|
|
|
|
|
|
|
}, |
1059
|
|
|
|
|
|
|
9 => { |
1060
|
|
|
|
|
|
|
Name => 'ExposureTime', |
1061
|
|
|
|
|
|
|
ValueConv => '2 ** ((48-$val)/8)', |
1062
|
|
|
|
|
|
|
ValueConvInv => '48 - 8*log($val)/log(2)', |
1063
|
|
|
|
|
|
|
PrintConv => 'Image::ExifTool::Exif::PrintExposureTime($val)', |
1064
|
|
|
|
|
|
|
PrintConvInv => 'Image::ExifTool::Exif::ConvertFraction($val)', |
1065
|
|
|
|
|
|
|
}, |
1066
|
|
|
|
|
|
|
10 => { |
1067
|
|
|
|
|
|
|
Name => 'FNumber', |
1068
|
|
|
|
|
|
|
ValueConv => '2 ** (($val-8)/16)', |
1069
|
|
|
|
|
|
|
ValueConvInv => '8 + 16*log($val)/log(2)', |
1070
|
|
|
|
|
|
|
PrintConv => 'sprintf("%.1f",$val)', |
1071
|
|
|
|
|
|
|
PrintConvInv => '$val', |
1072
|
|
|
|
|
|
|
}, |
1073
|
|
|
|
|
|
|
11 => { |
1074
|
|
|
|
|
|
|
Name => 'MacroMode', |
1075
|
|
|
|
|
|
|
PrintConv => { |
1076
|
|
|
|
|
|
|
0 => 'Off', |
1077
|
|
|
|
|
|
|
1 => 'On', |
1078
|
|
|
|
|
|
|
}, |
1079
|
|
|
|
|
|
|
}, |
1080
|
|
|
|
|
|
|
12 => { |
1081
|
|
|
|
|
|
|
Name => 'DigitalZoom', |
1082
|
|
|
|
|
|
|
PrintConv => { |
1083
|
|
|
|
|
|
|
0 => 'Off', |
1084
|
|
|
|
|
|
|
1 => 'Electronic magnification', |
1085
|
|
|
|
|
|
|
2 => '2x', |
1086
|
|
|
|
|
|
|
}, |
1087
|
|
|
|
|
|
|
}, |
1088
|
|
|
|
|
|
|
13 => { |
1089
|
|
|
|
|
|
|
Name => 'ExposureCompensation', |
1090
|
|
|
|
|
|
|
ValueConv => '$val/3 - 2', |
1091
|
|
|
|
|
|
|
ValueConvInv => '($val + 2) * 3', |
1092
|
|
|
|
|
|
|
PrintConv => 'Image::ExifTool::Exif::PrintFraction($val)', |
1093
|
|
|
|
|
|
|
PrintConvInv => 'Image::ExifTool::Exif::ConvertFraction($val)', |
1094
|
|
|
|
|
|
|
}, |
1095
|
|
|
|
|
|
|
14 => { |
1096
|
|
|
|
|
|
|
Name => 'BracketStep', |
1097
|
|
|
|
|
|
|
PrintConv => { |
1098
|
|
|
|
|
|
|
0 => '1/3 EV', |
1099
|
|
|
|
|
|
|
1 => '2/3 EV', |
1100
|
|
|
|
|
|
|
2 => '1 EV', |
1101
|
|
|
|
|
|
|
}, |
1102
|
|
|
|
|
|
|
}, |
1103
|
|
|
|
|
|
|
16 => 'IntervalLength', |
1104
|
|
|
|
|
|
|
17 => 'IntervalNumber', |
1105
|
|
|
|
|
|
|
18 => { |
1106
|
|
|
|
|
|
|
Name => 'FocalLength', |
1107
|
|
|
|
|
|
|
ValueConv => '$val / 256', |
1108
|
|
|
|
|
|
|
ValueConvInv => '$val * 256', |
1109
|
|
|
|
|
|
|
PrintConv => 'sprintf("%.1f mm",$val)', |
1110
|
|
|
|
|
|
|
PrintConvInv => '$val=~s/\s*mm$//;$val', |
1111
|
|
|
|
|
|
|
}, |
1112
|
|
|
|
|
|
|
19 => { |
1113
|
|
|
|
|
|
|
Name => 'FocusDistance', |
1114
|
|
|
|
|
|
|
ValueConv => '$val / 1000', |
1115
|
|
|
|
|
|
|
ValueConvInv => '$val * 1000', |
1116
|
|
|
|
|
|
|
PrintConv => '$val ? "$val m" : "inf"', |
1117
|
|
|
|
|
|
|
PrintConvInv => '$val eq "inf" ? 0 : $val =~ s/\s*m$//, $val', |
1118
|
|
|
|
|
|
|
}, |
1119
|
|
|
|
|
|
|
20 => { |
1120
|
|
|
|
|
|
|
Name => 'FlashFired', |
1121
|
|
|
|
|
|
|
PrintConv => { |
1122
|
|
|
|
|
|
|
0 => 'No', |
1123
|
|
|
|
|
|
|
1 => 'Yes', |
1124
|
|
|
|
|
|
|
}, |
1125
|
|
|
|
|
|
|
}, |
1126
|
|
|
|
|
|
|
21 => { |
1127
|
|
|
|
|
|
|
Name => 'MinoltaDate', |
1128
|
|
|
|
|
|
|
Groups => { 2 => 'Time' }, |
1129
|
|
|
|
|
|
|
Shift => 'Time', |
1130
|
|
|
|
|
|
|
ValueConv => 'sprintf("%4d:%.2d:%.2d",$val>>16,($val&0xff00)>>8,$val&0xff)', |
1131
|
|
|
|
|
|
|
ValueConvInv => 'my @a=($val=~/(\d+):(\d+):(\d+)/); @a ? ($a[0]<<16)+($a[1]<<8)+$a[2] : undef', |
1132
|
|
|
|
|
|
|
}, |
1133
|
|
|
|
|
|
|
22 => { |
1134
|
|
|
|
|
|
|
Name => 'MinoltaTime', |
1135
|
|
|
|
|
|
|
Groups => { 2 => 'Time' }, |
1136
|
|
|
|
|
|
|
Shift => 'Time', |
1137
|
|
|
|
|
|
|
ValueConv => 'sprintf("%.2d:%.2d:%.2d",$val>>16,($val&0xff00)>>8,$val&0xff)', |
1138
|
|
|
|
|
|
|
ValueConvInv => 'my @a=($val=~/(\d+):(\d+):(\d+)/); @a ? ($a[0]<<16)+($a[1]<<8)+$a[2] : undef', |
1139
|
|
|
|
|
|
|
}, |
1140
|
|
|
|
|
|
|
23 => { |
1141
|
|
|
|
|
|
|
Name => 'MaxAperture', |
1142
|
|
|
|
|
|
|
ValueConv => '2 ** (($val-8)/16)', |
1143
|
|
|
|
|
|
|
ValueConvInv => '8 + 16*log($val)/log(2)', |
1144
|
|
|
|
|
|
|
PrintConv => 'sprintf("%.1f",$val)', |
1145
|
|
|
|
|
|
|
PrintConvInv => '$val', |
1146
|
|
|
|
|
|
|
}, |
1147
|
|
|
|
|
|
|
26 => { |
1148
|
|
|
|
|
|
|
Name => 'FileNumberMemory', |
1149
|
|
|
|
|
|
|
PrintConv => \%offOn, |
1150
|
|
|
|
|
|
|
}, |
1151
|
|
|
|
|
|
|
27 => 'LastFileNumber', |
1152
|
|
|
|
|
|
|
28 => { |
1153
|
|
|
|
|
|
|
Name => 'ColorBalanceRed', |
1154
|
|
|
|
|
|
|
ValueConv => '$val / 256', |
1155
|
|
|
|
|
|
|
ValueConvInv => '$val * 256', |
1156
|
|
|
|
|
|
|
}, |
1157
|
|
|
|
|
|
|
29 => { |
1158
|
|
|
|
|
|
|
Name => 'ColorBalanceGreen', |
1159
|
|
|
|
|
|
|
ValueConv => '$val / 256', |
1160
|
|
|
|
|
|
|
ValueConvInv => '$val * 256', |
1161
|
|
|
|
|
|
|
}, |
1162
|
|
|
|
|
|
|
30 => { |
1163
|
|
|
|
|
|
|
Name => 'ColorBalanceBlue', |
1164
|
|
|
|
|
|
|
ValueConv => '$val / 256', |
1165
|
|
|
|
|
|
|
ValueConvInv => '$val * 256', |
1166
|
|
|
|
|
|
|
}, |
1167
|
|
|
|
|
|
|
31 => { |
1168
|
|
|
|
|
|
|
Name => 'Saturation', |
1169
|
|
|
|
|
|
|
ValueConv => '$val - ($self->{Model}=~/DiMAGE A2/ ? 5 : 3)', |
1170
|
|
|
|
|
|
|
ValueConvInv => '$val + ($self->{Model}=~/DiMAGE A2/ ? 5 : 3)', |
1171
|
|
|
|
|
|
|
%Image::ExifTool::Exif::printParameter, |
1172
|
|
|
|
|
|
|
}, |
1173
|
|
|
|
|
|
|
32 => { |
1174
|
|
|
|
|
|
|
Name => 'Contrast', |
1175
|
|
|
|
|
|
|
ValueConv => '$val - ($self->{Model}=~/DiMAGE A2/ ? 5 : 3)', |
1176
|
|
|
|
|
|
|
ValueConvInv => '$val + ($self->{Model}=~/DiMAGE A2/ ? 5 : 3)', |
1177
|
|
|
|
|
|
|
%Image::ExifTool::Exif::printParameter, |
1178
|
|
|
|
|
|
|
}, |
1179
|
|
|
|
|
|
|
33 => { |
1180
|
|
|
|
|
|
|
Name => 'Sharpness', |
1181
|
|
|
|
|
|
|
PrintConv => { |
1182
|
|
|
|
|
|
|
0 => 'Hard', |
1183
|
|
|
|
|
|
|
1 => 'Normal', |
1184
|
|
|
|
|
|
|
2 => 'Soft', |
1185
|
|
|
|
|
|
|
}, |
1186
|
|
|
|
|
|
|
}, |
1187
|
|
|
|
|
|
|
34 => { |
1188
|
|
|
|
|
|
|
Name => 'SubjectProgram', |
1189
|
|
|
|
|
|
|
PrintConv => { |
1190
|
|
|
|
|
|
|
0 => 'None', |
1191
|
|
|
|
|
|
|
1 => 'Portrait', |
1192
|
|
|
|
|
|
|
2 => 'Text', |
1193
|
|
|
|
|
|
|
3 => 'Night portrait', |
1194
|
|
|
|
|
|
|
4 => 'Sunset', |
1195
|
|
|
|
|
|
|
5 => 'Sports action', |
1196
|
|
|
|
|
|
|
}, |
1197
|
|
|
|
|
|
|
}, |
1198
|
|
|
|
|
|
|
35 => { |
1199
|
|
|
|
|
|
|
Name => 'FlashExposureComp', |
1200
|
|
|
|
|
|
|
Description => 'Flash Exposure Compensation', |
1201
|
|
|
|
|
|
|
ValueConv => '($val - 6) / 3', |
1202
|
|
|
|
|
|
|
ValueConvInv => '$val * 3 + 6', |
1203
|
|
|
|
|
|
|
PrintConv => 'Image::ExifTool::Exif::PrintFraction($val)', |
1204
|
|
|
|
|
|
|
PrintConvInv => 'Image::ExifTool::Exif::ConvertFraction($val)', |
1205
|
|
|
|
|
|
|
}, |
1206
|
|
|
|
|
|
|
36 => { |
1207
|
|
|
|
|
|
|
Name => 'ISOSetting', |
1208
|
|
|
|
|
|
|
PrintConv => { |
1209
|
|
|
|
|
|
|
0 => 100, |
1210
|
|
|
|
|
|
|
1 => 200, |
1211
|
|
|
|
|
|
|
2 => 400, |
1212
|
|
|
|
|
|
|
3 => 800, |
1213
|
|
|
|
|
|
|
4 => 'Auto', |
1214
|
|
|
|
|
|
|
5 => 64, |
1215
|
|
|
|
|
|
|
}, |
1216
|
|
|
|
|
|
|
}, |
1217
|
|
|
|
|
|
|
37 => { |
1218
|
|
|
|
|
|
|
Name => 'MinoltaModelID', |
1219
|
|
|
|
|
|
|
PrintConv => { |
1220
|
|
|
|
|
|
|
0 => 'DiMAGE 7, X1, X21 or X31', |
1221
|
|
|
|
|
|
|
1 => 'DiMAGE 5', |
1222
|
|
|
|
|
|
|
2 => 'DiMAGE S304', |
1223
|
|
|
|
|
|
|
3 => 'DiMAGE S404', |
1224
|
|
|
|
|
|
|
4 => 'DiMAGE 7i', |
1225
|
|
|
|
|
|
|
5 => 'DiMAGE 7Hi', |
1226
|
|
|
|
|
|
|
6 => 'DiMAGE A1', |
1227
|
|
|
|
|
|
|
7 => 'DiMAGE A2 or S414', |
1228
|
|
|
|
|
|
|
}, |
1229
|
|
|
|
|
|
|
}, |
1230
|
|
|
|
|
|
|
38 => { |
1231
|
|
|
|
|
|
|
Name => 'IntervalMode', |
1232
|
|
|
|
|
|
|
PrintConv => { |
1233
|
|
|
|
|
|
|
0 => 'Still Image', |
1234
|
|
|
|
|
|
|
1 => 'Time-lapse Movie', |
1235
|
|
|
|
|
|
|
}, |
1236
|
|
|
|
|
|
|
}, |
1237
|
|
|
|
|
|
|
39 => { |
1238
|
|
|
|
|
|
|
Name => 'FolderName', |
1239
|
|
|
|
|
|
|
PrintConv => { |
1240
|
|
|
|
|
|
|
0 => 'Standard Form', |
1241
|
|
|
|
|
|
|
1 => 'Data Form', |
1242
|
|
|
|
|
|
|
}, |
1243
|
|
|
|
|
|
|
}, |
1244
|
|
|
|
|
|
|
40 => { |
1245
|
|
|
|
|
|
|
Name => 'ColorMode', |
1246
|
|
|
|
|
|
|
PrintConv => { |
1247
|
|
|
|
|
|
|
0 => 'Natural color', |
1248
|
|
|
|
|
|
|
1 => 'Black & White', |
1249
|
|
|
|
|
|
|
2 => 'Vivid color', |
1250
|
|
|
|
|
|
|
3 => 'Solarization', |
1251
|
|
|
|
|
|
|
4 => 'Adobe RGB', |
1252
|
|
|
|
|
|
|
}, |
1253
|
|
|
|
|
|
|
}, |
1254
|
|
|
|
|
|
|
41 => { |
1255
|
|
|
|
|
|
|
Name => 'ColorFilter', |
1256
|
|
|
|
|
|
|
ValueConv => '$val - ($self->{Model}=~/DiMAGE A2/ ? 5 : 3)', |
1257
|
|
|
|
|
|
|
ValueConvInv => '$val + ($self->{Model}=~/DiMAGE A2/ ? 5 : 3)', |
1258
|
|
|
|
|
|
|
}, |
1259
|
|
|
|
|
|
|
42 => 'BWFilter', |
1260
|
|
|
|
|
|
|
43 => { |
1261
|
|
|
|
|
|
|
Name => 'InternalFlash', |
1262
|
|
|
|
|
|
|
PrintConv => { |
1263
|
|
|
|
|
|
|
0 => 'No', |
1264
|
|
|
|
|
|
|
1 => 'Fired', |
1265
|
|
|
|
|
|
|
}, |
1266
|
|
|
|
|
|
|
}, |
1267
|
|
|
|
|
|
|
44 => { |
1268
|
|
|
|
|
|
|
Name => 'Brightness', |
1269
|
|
|
|
|
|
|
ValueConv => '$val/8 - 6', |
1270
|
|
|
|
|
|
|
ValueConvInv => '($val + 6) * 8', |
1271
|
|
|
|
|
|
|
}, |
1272
|
|
|
|
|
|
|
45 => 'SpotFocusPointX', |
1273
|
|
|
|
|
|
|
46 => 'SpotFocusPointY', |
1274
|
|
|
|
|
|
|
47 => { |
1275
|
|
|
|
|
|
|
Name => 'WideFocusZone', |
1276
|
|
|
|
|
|
|
PrintConv => { |
1277
|
|
|
|
|
|
|
0 => 'No zone', |
1278
|
|
|
|
|
|
|
1 => 'Center zone (horizontal orientation)', |
1279
|
|
|
|
|
|
|
2 => 'Center zone (vertical orientation)', |
1280
|
|
|
|
|
|
|
3 => 'Left zone', |
1281
|
|
|
|
|
|
|
4 => 'Right zone', |
1282
|
|
|
|
|
|
|
}, |
1283
|
|
|
|
|
|
|
}, |
1284
|
|
|
|
|
|
|
48 => { |
1285
|
|
|
|
|
|
|
Name => 'FocusMode', |
1286
|
|
|
|
|
|
|
PrintConv => { |
1287
|
|
|
|
|
|
|
0 => 'AF', |
1288
|
|
|
|
|
|
|
1 => 'MF', |
1289
|
|
|
|
|
|
|
}, |
1290
|
|
|
|
|
|
|
}, |
1291
|
|
|
|
|
|
|
49 => { |
1292
|
|
|
|
|
|
|
Name => 'FocusArea', |
1293
|
|
|
|
|
|
|
PrintConv => { |
1294
|
|
|
|
|
|
|
0 => 'Wide Focus (normal)', |
1295
|
|
|
|
|
|
|
1 => 'Spot Focus', |
1296
|
|
|
|
|
|
|
}, |
1297
|
|
|
|
|
|
|
}, |
1298
|
|
|
|
|
|
|
50 => { |
1299
|
|
|
|
|
|
|
Name => 'DECPosition', |
1300
|
|
|
|
|
|
|
PrintConv => { |
1301
|
|
|
|
|
|
|
0 => 'Exposure', |
1302
|
|
|
|
|
|
|
1 => 'Contrast', |
1303
|
|
|
|
|
|
|
2 => 'Saturation', |
1304
|
|
|
|
|
|
|
3 => 'Filter', |
1305
|
|
|
|
|
|
|
}, |
1306
|
|
|
|
|
|
|
}, |
1307
|
|
|
|
|
|
|
# 7Hi only: |
1308
|
|
|
|
|
|
|
51 => { |
1309
|
|
|
|
|
|
|
Name => 'ColorProfile', |
1310
|
|
|
|
|
|
|
Condition => '$self->{Model} eq "DiMAGE 7Hi"', |
1311
|
|
|
|
|
|
|
Notes => 'DiMAGE 7Hi only', |
1312
|
|
|
|
|
|
|
PrintConv => { |
1313
|
|
|
|
|
|
|
0 => 'Not Embedded', |
1314
|
|
|
|
|
|
|
1 => 'Embedded', |
1315
|
|
|
|
|
|
|
}, |
1316
|
|
|
|
|
|
|
}, |
1317
|
|
|
|
|
|
|
# (the following may be entry 51 for other models?) |
1318
|
|
|
|
|
|
|
52 => { |
1319
|
|
|
|
|
|
|
Name => 'DataImprint', |
1320
|
|
|
|
|
|
|
Condition => '$self->{Model} eq "DiMAGE 7Hi"', |
1321
|
|
|
|
|
|
|
Notes => 'DiMAGE 7Hi only', |
1322
|
|
|
|
|
|
|
PrintConv => { |
1323
|
|
|
|
|
|
|
0 => 'None', |
1324
|
|
|
|
|
|
|
1 => 'YYYY/MM/DD', |
1325
|
|
|
|
|
|
|
2 => 'MM/DD/HH:MM', |
1326
|
|
|
|
|
|
|
3 => 'Text', |
1327
|
|
|
|
|
|
|
4 => 'Text + ID#', |
1328
|
|
|
|
|
|
|
}, |
1329
|
|
|
|
|
|
|
}, |
1330
|
|
|
|
|
|
|
63 => { #9 |
1331
|
|
|
|
|
|
|
Name => 'FlashMetering', |
1332
|
|
|
|
|
|
|
PrintConv => { |
1333
|
|
|
|
|
|
|
0 => 'ADI (Advanced Distance Integration)', |
1334
|
|
|
|
|
|
|
1 => 'Pre-flash TTL', |
1335
|
|
|
|
|
|
|
2 => 'Manual flash control', |
1336
|
|
|
|
|
|
|
}, |
1337
|
|
|
|
|
|
|
}, |
1338
|
|
|
|
|
|
|
); |
1339
|
|
|
|
|
|
|
|
1340
|
|
|
|
|
|
|
# Camera settings used by the 7D (ref 8) |
1341
|
|
|
|
|
|
|
%Image::ExifTool::Minolta::CameraSettings7D = ( |
1342
|
|
|
|
|
|
|
PROCESS_PROC => \&Image::ExifTool::ProcessBinaryData, |
1343
|
|
|
|
|
|
|
WRITE_PROC => \&Image::ExifTool::WriteBinaryData, |
1344
|
|
|
|
|
|
|
CHECK_PROC => \&Image::ExifTool::CheckBinaryData, |
1345
|
|
|
|
|
|
|
WRITABLE => 1, |
1346
|
|
|
|
|
|
|
PRIORITY => 0, |
1347
|
|
|
|
|
|
|
GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' }, |
1348
|
|
|
|
|
|
|
FORMAT => 'int16u', |
1349
|
|
|
|
|
|
|
FIRST_ENTRY => 0, |
1350
|
|
|
|
|
|
|
0x00 => { |
1351
|
|
|
|
|
|
|
Name => 'ExposureMode', |
1352
|
|
|
|
|
|
|
PrintConv => { |
1353
|
|
|
|
|
|
|
0 => 'Program', |
1354
|
|
|
|
|
|
|
1 => 'Aperture Priority', |
1355
|
|
|
|
|
|
|
2 => 'Shutter Priority', |
1356
|
|
|
|
|
|
|
3 => 'Manual', |
1357
|
|
|
|
|
|
|
4 => 'Auto', |
1358
|
|
|
|
|
|
|
5 => 'Program-shift A', |
1359
|
|
|
|
|
|
|
6 => 'Program-shift S', |
1360
|
|
|
|
|
|
|
}, |
1361
|
|
|
|
|
|
|
}, |
1362
|
|
|
|
|
|
|
0x02 => { #PH |
1363
|
|
|
|
|
|
|
Name => 'MinoltaImageSize', |
1364
|
|
|
|
|
|
|
PrintConv => { |
1365
|
|
|
|
|
|
|
0 => 'Large', |
1366
|
|
|
|
|
|
|
1 => 'Medium', |
1367
|
|
|
|
|
|
|
2 => 'Small', |
1368
|
|
|
|
|
|
|
}, |
1369
|
|
|
|
|
|
|
}, |
1370
|
|
|
|
|
|
|
0x03 => { |
1371
|
|
|
|
|
|
|
Name => 'MinoltaQuality', |
1372
|
|
|
|
|
|
|
PrintConv => { |
1373
|
|
|
|
|
|
|
0 => 'RAW', |
1374
|
|
|
|
|
|
|
16 => 'Fine', #PH |
1375
|
|
|
|
|
|
|
32 => 'Normal', #PH |
1376
|
|
|
|
|
|
|
34 => 'RAW+JPEG', |
1377
|
|
|
|
|
|
|
48 => 'Economy', #PH |
1378
|
|
|
|
|
|
|
}, |
1379
|
|
|
|
|
|
|
}, |
1380
|
|
|
|
|
|
|
0x04 => { |
1381
|
|
|
|
|
|
|
Name => 'WhiteBalance', |
1382
|
|
|
|
|
|
|
PrintConv => { |
1383
|
|
|
|
|
|
|
0 => 'Auto', |
1384
|
|
|
|
|
|
|
1 => 'Daylight', |
1385
|
|
|
|
|
|
|
2 => 'Shade', |
1386
|
|
|
|
|
|
|
3 => 'Cloudy', |
1387
|
|
|
|
|
|
|
4 => 'Tungsten', |
1388
|
|
|
|
|
|
|
5 => 'Fluorescent', |
1389
|
|
|
|
|
|
|
0x100 => 'Kelvin', |
1390
|
|
|
|
|
|
|
0x200 => 'Manual', |
1391
|
|
|
|
|
|
|
}, |
1392
|
|
|
|
|
|
|
}, |
1393
|
|
|
|
|
|
|
0x0e => { |
1394
|
|
|
|
|
|
|
Name => 'FocusMode', |
1395
|
|
|
|
|
|
|
PrintConv => { |
1396
|
|
|
|
|
|
|
0 => 'AF-S', |
1397
|
|
|
|
|
|
|
1 => 'AF-C', |
1398
|
|
|
|
|
|
|
# Note: these two are reversed in ref 8 |
1399
|
|
|
|
|
|
|
3 => 'Manual', #JD |
1400
|
|
|
|
|
|
|
4 => 'AF-A', #JD |
1401
|
|
|
|
|
|
|
}, |
1402
|
|
|
|
|
|
|
}, |
1403
|
|
|
|
|
|
|
0x10 => { |
1404
|
|
|
|
|
|
|
Name => 'AFPoints', |
1405
|
|
|
|
|
|
|
PrintConv => { |
1406
|
|
|
|
|
|
|
0 => '(none)', |
1407
|
|
|
|
|
|
|
BITMASK => { |
1408
|
|
|
|
|
|
|
0 => 'Center', |
1409
|
|
|
|
|
|
|
1 => 'Top', |
1410
|
|
|
|
|
|
|
2 => 'Top-right', |
1411
|
|
|
|
|
|
|
3 => 'Right', |
1412
|
|
|
|
|
|
|
4 => 'Bottom-right', |
1413
|
|
|
|
|
|
|
5 => 'Bottom', |
1414
|
|
|
|
|
|
|
6 => 'Bottom-left', |
1415
|
|
|
|
|
|
|
7 => 'Left', |
1416
|
|
|
|
|
|
|
8 => 'Top-left', |
1417
|
|
|
|
|
|
|
}, |
1418
|
|
|
|
|
|
|
}, |
1419
|
|
|
|
|
|
|
}, |
1420
|
|
|
|
|
|
|
0x15 => { |
1421
|
|
|
|
|
|
|
Name => 'Flash', |
1422
|
|
|
|
|
|
|
PrintConv => \%offOn, |
1423
|
|
|
|
|
|
|
}, |
1424
|
|
|
|
|
|
|
0x16 => { #10 |
1425
|
|
|
|
|
|
|
Name => 'FlashMode', |
1426
|
|
|
|
|
|
|
PrintConv => { |
1427
|
|
|
|
|
|
|
0 => 'Normal', |
1428
|
|
|
|
|
|
|
1 => 'Red-eye reduction', |
1429
|
|
|
|
|
|
|
2 => 'Rear flash sync', |
1430
|
|
|
|
|
|
|
}, |
1431
|
|
|
|
|
|
|
}, |
1432
|
|
|
|
|
|
|
0x1c => { |
1433
|
|
|
|
|
|
|
Name => 'ISOSetting', |
1434
|
|
|
|
|
|
|
PrintConv => { |
1435
|
|
|
|
|
|
|
0 => 'Auto', #10 |
1436
|
|
|
|
|
|
|
1 => 100, |
1437
|
|
|
|
|
|
|
3 => 200, |
1438
|
|
|
|
|
|
|
4 => 400, |
1439
|
|
|
|
|
|
|
5 => 800, |
1440
|
|
|
|
|
|
|
6 => 1600, |
1441
|
|
|
|
|
|
|
7 => 3200, |
1442
|
|
|
|
|
|
|
}, |
1443
|
|
|
|
|
|
|
}, |
1444
|
|
|
|
|
|
|
0x1e => { |
1445
|
|
|
|
|
|
|
Name => 'ExposureCompensation', |
1446
|
|
|
|
|
|
|
Format => 'int16s', |
1447
|
|
|
|
|
|
|
ValueConv => '$val / 24', |
1448
|
|
|
|
|
|
|
ValueConvInv => '$val * 24', |
1449
|
|
|
|
|
|
|
PrintConv => 'Image::ExifTool::Exif::PrintFraction($val)', |
1450
|
|
|
|
|
|
|
PrintConvInv => 'Image::ExifTool::Exif::ConvertFraction($val)', |
1451
|
|
|
|
|
|
|
}, |
1452
|
|
|
|
|
|
|
0x25 => { |
1453
|
|
|
|
|
|
|
Name => 'ColorSpace', |
1454
|
|
|
|
|
|
|
PrintConv => { |
1455
|
|
|
|
|
|
|
0 => 'Natural sRGB', |
1456
|
|
|
|
|
|
|
1 => 'Natural+ sRGB', |
1457
|
|
|
|
|
|
|
4 => 'Adobe RGB', |
1458
|
|
|
|
|
|
|
}, |
1459
|
|
|
|
|
|
|
}, |
1460
|
|
|
|
|
|
|
0x26 => { |
1461
|
|
|
|
|
|
|
Name => 'Sharpness', |
1462
|
|
|
|
|
|
|
ValueConv => '$val - 10', |
1463
|
|
|
|
|
|
|
ValueConvInv => '$val + 10', |
1464
|
|
|
|
|
|
|
}, |
1465
|
|
|
|
|
|
|
0x27 => { |
1466
|
|
|
|
|
|
|
Name => 'Contrast', |
1467
|
|
|
|
|
|
|
ValueConv => '$val - 10', |
1468
|
|
|
|
|
|
|
ValueConvInv => '$val + 10', |
1469
|
|
|
|
|
|
|
}, |
1470
|
|
|
|
|
|
|
0x28 => { |
1471
|
|
|
|
|
|
|
Name => 'Saturation', |
1472
|
|
|
|
|
|
|
ValueConv => '$val - 10', |
1473
|
|
|
|
|
|
|
ValueConvInv => '$val + 10', |
1474
|
|
|
|
|
|
|
}, |
1475
|
|
|
|
|
|
|
0x2d => 'FreeMemoryCardImages', |
1476
|
|
|
|
|
|
|
0x3f => { |
1477
|
|
|
|
|
|
|
Format => 'int16s', |
1478
|
|
|
|
|
|
|
Name => 'ColorTemperature', |
1479
|
|
|
|
|
|
|
ValueConv => '$val * 100', |
1480
|
|
|
|
|
|
|
ValueConvInv => '$val / 100', |
1481
|
|
|
|
|
|
|
}, |
1482
|
|
|
|
|
|
|
0x40 => { #10 |
1483
|
|
|
|
|
|
|
Name => 'HueAdjustment', |
1484
|
|
|
|
|
|
|
ValueConv => '$val - 10', |
1485
|
|
|
|
|
|
|
ValueConvInv => '$val + 10', |
1486
|
|
|
|
|
|
|
}, |
1487
|
|
|
|
|
|
|
0x46 => { |
1488
|
|
|
|
|
|
|
Name => 'Rotation', |
1489
|
|
|
|
|
|
|
PrintConv => { |
1490
|
|
|
|
|
|
|
72 => 'Horizontal (normal)', |
1491
|
|
|
|
|
|
|
76 => 'Rotate 90 CW', |
1492
|
|
|
|
|
|
|
82 => 'Rotate 270 CW', |
1493
|
|
|
|
|
|
|
}, |
1494
|
|
|
|
|
|
|
}, |
1495
|
|
|
|
|
|
|
0x47 => { |
1496
|
|
|
|
|
|
|
Name => 'FNumber', |
1497
|
|
|
|
|
|
|
ValueConv => '2 ** (($val-8)/16)', |
1498
|
|
|
|
|
|
|
ValueConvInv => '8 + 16*log($val)/log(2)', |
1499
|
|
|
|
|
|
|
PrintConv => 'sprintf("%.1f",$val)', |
1500
|
|
|
|
|
|
|
PrintConvInv => '$val', |
1501
|
|
|
|
|
|
|
}, |
1502
|
|
|
|
|
|
|
0x48 => { |
1503
|
|
|
|
|
|
|
Name => 'ExposureTime', |
1504
|
|
|
|
|
|
|
ValueConv => '2 ** ((48-$val)/8)', |
1505
|
|
|
|
|
|
|
ValueConvInv => '48 - 8*log($val)/log(2)', |
1506
|
|
|
|
|
|
|
PrintConv => 'Image::ExifTool::Exif::PrintExposureTime($val)', |
1507
|
|
|
|
|
|
|
PrintConvInv => 'Image::ExifTool::Exif::ConvertFraction($val)', |
1508
|
|
|
|
|
|
|
}, |
1509
|
|
|
|
|
|
|
0x4a => 'FreeMemoryCardImages', |
1510
|
|
|
|
|
|
|
0x5e => { |
1511
|
|
|
|
|
|
|
Name => 'ImageNumber', |
1512
|
|
|
|
|
|
|
Notes => q{ |
1513
|
|
|
|
|
|
|
this information may appear at index 98 (0x62), depending on firmware |
1514
|
|
|
|
|
|
|
version |
1515
|
|
|
|
|
|
|
}, |
1516
|
|
|
|
|
|
|
ValueConv => '$val + 1', |
1517
|
|
|
|
|
|
|
ValueConvInv => '$val - 1', |
1518
|
|
|
|
|
|
|
}, |
1519
|
|
|
|
|
|
|
0x60 => { |
1520
|
|
|
|
|
|
|
Name => 'NoiseReduction', |
1521
|
|
|
|
|
|
|
PrintConv => \%offOn, |
1522
|
|
|
|
|
|
|
}, |
1523
|
|
|
|
|
|
|
0x62 => { |
1524
|
|
|
|
|
|
|
Name => 'ImageNumber2', |
1525
|
|
|
|
|
|
|
ValueConv => '$val + 1', |
1526
|
|
|
|
|
|
|
ValueConvInv => '$val - 1', |
1527
|
|
|
|
|
|
|
}, |
1528
|
|
|
|
|
|
|
0x71 => { |
1529
|
|
|
|
|
|
|
Name => 'ImageStabilization', |
1530
|
|
|
|
|
|
|
PrintConv => \%offOn, |
1531
|
|
|
|
|
|
|
}, |
1532
|
|
|
|
|
|
|
0x75 => { |
1533
|
|
|
|
|
|
|
Name => 'ZoneMatchingOn', |
1534
|
|
|
|
|
|
|
PrintConv => \%offOn, |
1535
|
|
|
|
|
|
|
}, |
1536
|
|
|
|
|
|
|
); |
1537
|
|
|
|
|
|
|
|
1538
|
|
|
|
|
|
|
# Camera settings used by the 5D (ref 8) |
1539
|
|
|
|
|
|
|
%Image::ExifTool::Minolta::CameraSettings5D = ( |
1540
|
|
|
|
|
|
|
PROCESS_PROC => \&Image::ExifTool::ProcessBinaryData, |
1541
|
|
|
|
|
|
|
WRITE_PROC => \&Image::ExifTool::WriteBinaryData, |
1542
|
|
|
|
|
|
|
CHECK_PROC => \&Image::ExifTool::CheckBinaryData, |
1543
|
|
|
|
|
|
|
WRITABLE => 1, |
1544
|
|
|
|
|
|
|
PRIORITY => 0, |
1545
|
|
|
|
|
|
|
GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' }, |
1546
|
|
|
|
|
|
|
FORMAT => 'int16u', |
1547
|
|
|
|
|
|
|
FIRST_ENTRY => 0, |
1548
|
|
|
|
|
|
|
0x0a => { |
1549
|
|
|
|
|
|
|
Name => 'ExposureMode', |
1550
|
|
|
|
|
|
|
PrintConv => { |
1551
|
|
|
|
|
|
|
0 => 'Program', |
1552
|
|
|
|
|
|
|
1 => 'Aperture Priority', |
1553
|
|
|
|
|
|
|
2 => 'Shutter Priority', |
1554
|
|
|
|
|
|
|
3 => 'Manual', |
1555
|
|
|
|
|
|
|
4 => 'Auto?', |
1556
|
|
|
|
|
|
|
4131 => 'Connected Copying?', |
1557
|
|
|
|
|
|
|
}, |
1558
|
|
|
|
|
|
|
}, |
1559
|
|
|
|
|
|
|
0x0c => { #PH |
1560
|
|
|
|
|
|
|
Name => 'MinoltaImageSize', |
1561
|
|
|
|
|
|
|
PrintConv => { |
1562
|
|
|
|
|
|
|
0 => 'Large', |
1563
|
|
|
|
|
|
|
1 => 'Medium', |
1564
|
|
|
|
|
|
|
2 => 'Small', |
1565
|
|
|
|
|
|
|
}, |
1566
|
|
|
|
|
|
|
}, |
1567
|
|
|
|
|
|
|
0x0d => { |
1568
|
|
|
|
|
|
|
Name => 'MinoltaQuality', |
1569
|
|
|
|
|
|
|
PrintConv => { |
1570
|
|
|
|
|
|
|
0 => 'RAW', |
1571
|
|
|
|
|
|
|
16 => 'Fine', #PH |
1572
|
|
|
|
|
|
|
32 => 'Normal', #PH |
1573
|
|
|
|
|
|
|
34 => 'RAW+JPEG', |
1574
|
|
|
|
|
|
|
48 => 'Economy', #PH |
1575
|
|
|
|
|
|
|
}, |
1576
|
|
|
|
|
|
|
}, |
1577
|
|
|
|
|
|
|
0x0e => { |
1578
|
|
|
|
|
|
|
Name => 'WhiteBalance', |
1579
|
|
|
|
|
|
|
PrintConv => { |
1580
|
|
|
|
|
|
|
0 => 'Auto', |
1581
|
|
|
|
|
|
|
1 => 'Daylight', |
1582
|
|
|
|
|
|
|
2 => 'Cloudy', |
1583
|
|
|
|
|
|
|
3 => 'Shade', |
1584
|
|
|
|
|
|
|
4 => 'Tungsten', |
1585
|
|
|
|
|
|
|
5 => 'Fluorescent', |
1586
|
|
|
|
|
|
|
6 => 'Flash', |
1587
|
|
|
|
|
|
|
0x100 => 'Kelvin', |
1588
|
|
|
|
|
|
|
0x200 => 'Manual', |
1589
|
|
|
|
|
|
|
}, |
1590
|
|
|
|
|
|
|
}, |
1591
|
|
|
|
|
|
|
# 0x0f-0x11 something to do with WB RGB levels as shot? (PH) |
1592
|
|
|
|
|
|
|
# 0x12-0x17 RGB levels for other WB modes (with G missing)? (PH) |
1593
|
|
|
|
|
|
|
0x1f => { #PH |
1594
|
|
|
|
|
|
|
Name => 'Flash', |
1595
|
|
|
|
|
|
|
PrintConv => { |
1596
|
|
|
|
|
|
|
0 => 'Did not fire', |
1597
|
|
|
|
|
|
|
1 => 'Fired', |
1598
|
|
|
|
|
|
|
}, |
1599
|
|
|
|
|
|
|
}, |
1600
|
|
|
|
|
|
|
0x20 => { #10 |
1601
|
|
|
|
|
|
|
Name => 'FlashMode', |
1602
|
|
|
|
|
|
|
PrintConv => { |
1603
|
|
|
|
|
|
|
0 => 'Normal', |
1604
|
|
|
|
|
|
|
1 => 'Red-eye reduction', |
1605
|
|
|
|
|
|
|
2 => 'Rear flash sync', |
1606
|
|
|
|
|
|
|
}, |
1607
|
|
|
|
|
|
|
}, |
1608
|
|
|
|
|
|
|
0x25 => { |
1609
|
|
|
|
|
|
|
Name => 'MeteringMode', |
1610
|
|
|
|
|
|
|
PrintConv => { |
1611
|
|
|
|
|
|
|
0 => 'Multi-segment', |
1612
|
|
|
|
|
|
|
1 => 'Center-weighted average', |
1613
|
|
|
|
|
|
|
2 => 'Spot', |
1614
|
|
|
|
|
|
|
}, |
1615
|
|
|
|
|
|
|
}, |
1616
|
|
|
|
|
|
|
0x26 => { |
1617
|
|
|
|
|
|
|
Name => 'ISOSetting', |
1618
|
|
|
|
|
|
|
PrintConv => { |
1619
|
|
|
|
|
|
|
0 => 'Auto', |
1620
|
|
|
|
|
|
|
1 => 100, |
1621
|
|
|
|
|
|
|
3 => 200, |
1622
|
|
|
|
|
|
|
4 => 400, |
1623
|
|
|
|
|
|
|
5 => 800, |
1624
|
|
|
|
|
|
|
6 => 1600, |
1625
|
|
|
|
|
|
|
7 => 3200, |
1626
|
|
|
|
|
|
|
8 => '200 (Zone Matching High)', |
1627
|
|
|
|
|
|
|
10 => '80 (Zone Matching Low)', |
1628
|
|
|
|
|
|
|
}, |
1629
|
|
|
|
|
|
|
}, |
1630
|
|
|
|
|
|
|
# looks wrong: |
1631
|
|
|
|
|
|
|
# 0x28 => { #10 |
1632
|
|
|
|
|
|
|
# Name => 'ExposureCompensation', |
1633
|
|
|
|
|
|
|
# ValueConv => '$val / 24', |
1634
|
|
|
|
|
|
|
# ValueConvInv => '$val * 24', |
1635
|
|
|
|
|
|
|
# }, |
1636
|
|
|
|
|
|
|
0x2f => { #10 |
1637
|
|
|
|
|
|
|
Name => 'ColorSpace', |
1638
|
|
|
|
|
|
|
PrintConv => { |
1639
|
|
|
|
|
|
|
0 => 'Natural sRGB', |
1640
|
|
|
|
|
|
|
1 => 'Natural+ sRGB', |
1641
|
|
|
|
|
|
|
2 => 'Monochrome', |
1642
|
|
|
|
|
|
|
4 => 'Adobe RGB (ICC)', |
1643
|
|
|
|
|
|
|
5 => 'Adobe RGB', |
1644
|
|
|
|
|
|
|
}, |
1645
|
|
|
|
|
|
|
}, |
1646
|
|
|
|
|
|
|
0x30 => { |
1647
|
|
|
|
|
|
|
Name => 'Sharpness', |
1648
|
|
|
|
|
|
|
ValueConv => '$val - 10', |
1649
|
|
|
|
|
|
|
ValueConvInv => '$val + 10', |
1650
|
|
|
|
|
|
|
}, |
1651
|
|
|
|
|
|
|
0x31 => { |
1652
|
|
|
|
|
|
|
Name => 'Contrast', |
1653
|
|
|
|
|
|
|
ValueConv => '$val - 10', |
1654
|
|
|
|
|
|
|
ValueConvInv => '$val + 10', |
1655
|
|
|
|
|
|
|
}, |
1656
|
|
|
|
|
|
|
0x32 => { |
1657
|
|
|
|
|
|
|
Name => 'Saturation', |
1658
|
|
|
|
|
|
|
ValueConv => '$val - 10', |
1659
|
|
|
|
|
|
|
ValueConvInv => '$val + 10', |
1660
|
|
|
|
|
|
|
}, |
1661
|
|
|
|
|
|
|
0x35 => { #PH |
1662
|
|
|
|
|
|
|
Name => 'ExposureTime', |
1663
|
|
|
|
|
|
|
ValueConv => '2 ** ((48-$val)/8)', |
1664
|
|
|
|
|
|
|
ValueConvInv => '48 - 8*log($val)/log(2)', |
1665
|
|
|
|
|
|
|
PrintConv => 'Image::ExifTool::Exif::PrintExposureTime($val)', |
1666
|
|
|
|
|
|
|
PrintConvInv => 'Image::ExifTool::Exif::ConvertFraction($val)', |
1667
|
|
|
|
|
|
|
}, |
1668
|
|
|
|
|
|
|
0x36 => { #PH |
1669
|
|
|
|
|
|
|
Name => 'FNumber', |
1670
|
|
|
|
|
|
|
ValueConv => '2 ** (($val-8)/16)', |
1671
|
|
|
|
|
|
|
ValueConvInv => '8 + 16*log($val)/log(2)', |
1672
|
|
|
|
|
|
|
PrintConv => 'sprintf("%.1f",$val)', |
1673
|
|
|
|
|
|
|
PrintConvInv => '$val', |
1674
|
|
|
|
|
|
|
}, |
1675
|
|
|
|
|
|
|
0x37 => 'FreeMemoryCardImages', |
1676
|
|
|
|
|
|
|
# 0x38 definitely not related to exposure comp as in ref 8 (PH) |
1677
|
|
|
|
|
|
|
0x49 => { #PH |
1678
|
|
|
|
|
|
|
Name => 'ColorTemperature', |
1679
|
|
|
|
|
|
|
Format => 'int16s', |
1680
|
|
|
|
|
|
|
ValueConv => '$val * 100', |
1681
|
|
|
|
|
|
|
ValueConvInv => '$val / 100', |
1682
|
|
|
|
|
|
|
}, |
1683
|
|
|
|
|
|
|
0x4a => { #10 |
1684
|
|
|
|
|
|
|
Name => 'HueAdjustment', |
1685
|
|
|
|
|
|
|
ValueConv => '$val - 10', |
1686
|
|
|
|
|
|
|
ValueConvInv => '$val + 10', |
1687
|
|
|
|
|
|
|
}, |
1688
|
|
|
|
|
|
|
0x50 => { |
1689
|
|
|
|
|
|
|
Name => 'Rotation', |
1690
|
|
|
|
|
|
|
PrintConv => { |
1691
|
|
|
|
|
|
|
72 => 'Horizontal (normal)', |
1692
|
|
|
|
|
|
|
76 => 'Rotate 90 CW', |
1693
|
|
|
|
|
|
|
82 => 'Rotate 270 CW', |
1694
|
|
|
|
|
|
|
}, |
1695
|
|
|
|
|
|
|
}, |
1696
|
|
|
|
|
|
|
0x53 => { |
1697
|
|
|
|
|
|
|
Name => 'ExposureCompensation', |
1698
|
|
|
|
|
|
|
ValueConv => '$val / 100 - 3', |
1699
|
|
|
|
|
|
|
ValueConvInv => '($val + 3) * 100', |
1700
|
|
|
|
|
|
|
PrintConv => 'Image::ExifTool::Exif::PrintFraction($val)', |
1701
|
|
|
|
|
|
|
PrintConvInv => 'Image::ExifTool::Exif::ConvertFraction($val)', |
1702
|
|
|
|
|
|
|
}, |
1703
|
|
|
|
|
|
|
0x54 => 'FreeMemoryCardImages', |
1704
|
|
|
|
|
|
|
0x65 => { #10 |
1705
|
|
|
|
|
|
|
Name => 'Rotation', |
1706
|
|
|
|
|
|
|
PrintConv => { |
1707
|
|
|
|
|
|
|
0 => 'Horizontal (normal)', |
1708
|
|
|
|
|
|
|
1 => 'Rotate 90 CW', |
1709
|
|
|
|
|
|
|
2 => 'Rotate 270 CW', |
1710
|
|
|
|
|
|
|
}, |
1711
|
|
|
|
|
|
|
}, |
1712
|
|
|
|
|
|
|
# 0x66 maybe program mode or some setting like this? (PH) |
1713
|
|
|
|
|
|
|
0x6e => { #10 |
1714
|
|
|
|
|
|
|
Name => 'ColorTemperature', |
1715
|
|
|
|
|
|
|
Format => 'int16s', |
1716
|
|
|
|
|
|
|
ValueConv => '$val * 100', |
1717
|
|
|
|
|
|
|
ValueConvInv => '$val / 100', |
1718
|
|
|
|
|
|
|
}, |
1719
|
|
|
|
|
|
|
0x71 => { #10 |
1720
|
|
|
|
|
|
|
Name => 'PictureFinish', |
1721
|
|
|
|
|
|
|
PrintConv => { |
1722
|
|
|
|
|
|
|
0 => 'Natural', |
1723
|
|
|
|
|
|
|
1 => 'Natural+', |
1724
|
|
|
|
|
|
|
2 => 'Portrait', |
1725
|
|
|
|
|
|
|
3 => 'Wind Scene', |
1726
|
|
|
|
|
|
|
4 => 'Evening Scene', |
1727
|
|
|
|
|
|
|
5 => 'Night Scene', |
1728
|
|
|
|
|
|
|
6 => 'Night Portrait', |
1729
|
|
|
|
|
|
|
7 => 'Monochrome', |
1730
|
|
|
|
|
|
|
8 => 'Adobe RGB', |
1731
|
|
|
|
|
|
|
9 => 'Adobe RGB (ICC)', |
1732
|
|
|
|
|
|
|
}, |
1733
|
|
|
|
|
|
|
}, |
1734
|
|
|
|
|
|
|
# 0x95 FlashStrength? (PH) |
1735
|
|
|
|
|
|
|
# 0xa4 similar information to 0x27, except with different values |
1736
|
|
|
|
|
|
|
0xae => { |
1737
|
|
|
|
|
|
|
Name => 'ImageNumber', |
1738
|
|
|
|
|
|
|
ValueConv => '$val + 1', |
1739
|
|
|
|
|
|
|
ValueConvInv => '$val - 1', |
1740
|
|
|
|
|
|
|
}, |
1741
|
|
|
|
|
|
|
0xb0 => { |
1742
|
|
|
|
|
|
|
Name => 'NoiseReduction', |
1743
|
|
|
|
|
|
|
PrintConv => \%offOn, |
1744
|
|
|
|
|
|
|
}, |
1745
|
|
|
|
|
|
|
0xbd => { |
1746
|
|
|
|
|
|
|
Name => 'ImageStabilization', |
1747
|
|
|
|
|
|
|
PrintConv => \%offOn, |
1748
|
|
|
|
|
|
|
}, |
1749
|
|
|
|
|
|
|
); |
1750
|
|
|
|
|
|
|
|
1751
|
|
|
|
|
|
|
# Camera settings used by the Sony DSLR-A100 (ref 20) |
1752
|
|
|
|
|
|
|
%Image::ExifTool::Minolta::CameraInfoA100 = ( |
1753
|
|
|
|
|
|
|
PROCESS_PROC => \&Image::ExifTool::ProcessBinaryData, |
1754
|
|
|
|
|
|
|
WRITE_PROC => \&Image::ExifTool::WriteBinaryData, |
1755
|
|
|
|
|
|
|
CHECK_PROC => \&Image::ExifTool::CheckBinaryData, |
1756
|
|
|
|
|
|
|
NOTES => 'Camera information for the Sony DSLR-A100.', |
1757
|
|
|
|
|
|
|
WRITABLE => 1, |
1758
|
|
|
|
|
|
|
PRIORITY => 0, # may not be as reliable as other information |
1759
|
|
|
|
|
|
|
GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' }, |
1760
|
|
|
|
|
|
|
FIRST_ENTRY => 0, |
1761
|
|
|
|
|
|
|
0x01 => { #PH |
1762
|
|
|
|
|
|
|
Name => 'AFSensorActive', |
1763
|
|
|
|
|
|
|
PrintConv => { |
1764
|
|
|
|
|
|
|
0 => 'Top-right', |
1765
|
|
|
|
|
|
|
1 => 'Bottom-right', |
1766
|
|
|
|
|
|
|
2 => 'Bottom', |
1767
|
|
|
|
|
|
|
3 => 'Middle Horizontal', |
1768
|
|
|
|
|
|
|
4 => 'Center Vertical', |
1769
|
|
|
|
|
|
|
5 => 'Top', |
1770
|
|
|
|
|
|
|
6 => 'Top-left', |
1771
|
|
|
|
|
|
|
7 => 'Bottom-left', |
1772
|
|
|
|
|
|
|
}, |
1773
|
|
|
|
|
|
|
}, |
1774
|
|
|
|
|
|
|
0x02 => { |
1775
|
|
|
|
|
|
|
Name => 'AFStatusActiveSensor', |
1776
|
|
|
|
|
|
|
%afStatusInfo, |
1777
|
|
|
|
|
|
|
Notes => q{ |
1778
|
|
|
|
|
|
|
the focus status at shutter release. May not reflect the status after |
1779
|
|
|
|
|
|
|
focusing if the image is focused then recomposed |
1780
|
|
|
|
|
|
|
}, |
1781
|
|
|
|
|
|
|
}, |
1782
|
|
|
|
|
|
|
0x04 => { Name => 'AFStatusTop-right', %afStatusInfo }, |
1783
|
|
|
|
|
|
|
0x06 => { Name => 'AFStatusBottom-right', %afStatusInfo }, |
1784
|
|
|
|
|
|
|
0x08 => { Name => 'AFStatusBottom', %afStatusInfo }, |
1785
|
|
|
|
|
|
|
0x0a => { |
1786
|
|
|
|
|
|
|
Name => 'AFStatusMiddleHorizontal', |
1787
|
|
|
|
|
|
|
%afStatusInfo, |
1788
|
|
|
|
|
|
|
Notes => q{ |
1789
|
|
|
|
|
|
|
any of the three horizontal sensors at the middle of the focus frame: Left, |
1790
|
|
|
|
|
|
|
Center or Right |
1791
|
|
|
|
|
|
|
}, |
1792
|
|
|
|
|
|
|
}, |
1793
|
|
|
|
|
|
|
0x0c => { Name => 'AFStatusCenterVertical', %afStatusInfo }, |
1794
|
|
|
|
|
|
|
0x0e => { Name => 'AFStatusTop', %afStatusInfo }, |
1795
|
|
|
|
|
|
|
0x10 => { Name => 'AFStatusTop-left', %afStatusInfo }, |
1796
|
|
|
|
|
|
|
0x12 => { Name => 'AFStatusBottom-left', %afStatusInfo }, |
1797
|
|
|
|
|
|
|
0x14 => { |
1798
|
|
|
|
|
|
|
Name => 'FocusLocked', |
1799
|
|
|
|
|
|
|
# (Focus can be locked in all modes other than Manual and Continuous, |
1800
|
|
|
|
|
|
|
# and the latter can be overridden by pushing the Spot AF button) |
1801
|
|
|
|
|
|
|
PrintConv => { |
1802
|
|
|
|
|
|
|
0 => 'Manual Focus', |
1803
|
|
|
|
|
|
|
4 => 'No', |
1804
|
|
|
|
|
|
|
16 => 'Continuous Focus', |
1805
|
|
|
|
|
|
|
64 => 'Yes', |
1806
|
|
|
|
|
|
|
}, |
1807
|
|
|
|
|
|
|
}, |
1808
|
|
|
|
|
|
|
0x15 => { |
1809
|
|
|
|
|
|
|
Name => 'AFPoint', |
1810
|
|
|
|
|
|
|
PrintConvColumns => 2, |
1811
|
|
|
|
|
|
|
PrintConv => { |
1812
|
|
|
|
|
|
|
0 => 'Auto', |
1813
|
|
|
|
|
|
|
1 => 'Center', |
1814
|
|
|
|
|
|
|
2 => 'Top', |
1815
|
|
|
|
|
|
|
3 => 'Top-right', |
1816
|
|
|
|
|
|
|
4 => 'Right', |
1817
|
|
|
|
|
|
|
5 => 'Bottom-right', |
1818
|
|
|
|
|
|
|
6 => 'Bottom', |
1819
|
|
|
|
|
|
|
7 => 'Bottom-left', |
1820
|
|
|
|
|
|
|
8 => 'Left', |
1821
|
|
|
|
|
|
|
9 => 'Top-left', |
1822
|
|
|
|
|
|
|
}, |
1823
|
|
|
|
|
|
|
}, |
1824
|
|
|
|
|
|
|
0x16 => { |
1825
|
|
|
|
|
|
|
Name => 'AFMode', |
1826
|
|
|
|
|
|
|
PrintConv => { |
1827
|
|
|
|
|
|
|
0 => 'DMF', |
1828
|
|
|
|
|
|
|
1 => 'AF-S', |
1829
|
|
|
|
|
|
|
2 => 'AF-C', |
1830
|
|
|
|
|
|
|
3 => 'AF-A', |
1831
|
|
|
|
|
|
|
}, |
1832
|
|
|
|
|
|
|
}, |
1833
|
|
|
|
|
|
|
0x2d => { Name => 'AFStatusLeft', %afStatusInfo }, |
1834
|
|
|
|
|
|
|
0x2f => { Name => 'AFStatusCenterHorizontal',%afStatusInfo }, |
1835
|
|
|
|
|
|
|
0x31 => { Name => 'AFStatusRight', %afStatusInfo }, |
1836
|
|
|
|
|
|
|
0x33 => { |
1837
|
|
|
|
|
|
|
Name => 'AFAreaMode', |
1838
|
|
|
|
|
|
|
PrintConv => { |
1839
|
|
|
|
|
|
|
0 => 'Wide', |
1840
|
|
|
|
|
|
|
1 => 'Local', |
1841
|
|
|
|
|
|
|
2 => 'Spot', |
1842
|
|
|
|
|
|
|
}, |
1843
|
|
|
|
|
|
|
}, |
1844
|
|
|
|
|
|
|
); |
1845
|
|
|
|
|
|
|
|
1846
|
|
|
|
|
|
|
# Image stabilization information used by the Sony DSLR-A100 (ref 20) |
1847
|
|
|
|
|
|
|
%Image::ExifTool::Minolta::ISInfoA100 = ( |
1848
|
|
|
|
|
|
|
PROCESS_PROC => \&Image::ExifTool::ProcessBinaryData, |
1849
|
|
|
|
|
|
|
WRITE_PROC => \&Image::ExifTool::WriteBinaryData, |
1850
|
|
|
|
|
|
|
CHECK_PROC => \&Image::ExifTool::CheckBinaryData, |
1851
|
|
|
|
|
|
|
NOTES => 'Image stabilization information for the Sony DSLR-A100.', |
1852
|
|
|
|
|
|
|
WRITABLE => 1, |
1853
|
|
|
|
|
|
|
PRIORITY => 0, # may not be as reliable as other information |
1854
|
|
|
|
|
|
|
GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' }, |
1855
|
|
|
|
|
|
|
FIRST_ENTRY => 0, |
1856
|
|
|
|
|
|
|
0 => { |
1857
|
|
|
|
|
|
|
Name => 'ImageStabilization', |
1858
|
|
|
|
|
|
|
Format => 'int16u', |
1859
|
|
|
|
|
|
|
PrintHex => 1, |
1860
|
|
|
|
|
|
|
PrintConv => { |
1861
|
|
|
|
|
|
|
0x0000 => 'Off', |
1862
|
|
|
|
|
|
|
0x2784 => 'On', |
1863
|
|
|
|
|
|
|
}, |
1864
|
|
|
|
|
|
|
}, |
1865
|
|
|
|
|
|
|
); |
1866
|
|
|
|
|
|
|
|
1867
|
|
|
|
|
|
|
# Camera settings used by the Sony DSLR-A100 (ref PH) |
1868
|
|
|
|
|
|
|
%Image::ExifTool::Minolta::CameraSettingsA100 = ( |
1869
|
|
|
|
|
|
|
PROCESS_PROC => \&Image::ExifTool::ProcessBinaryData, |
1870
|
|
|
|
|
|
|
WRITE_PROC => \&Image::ExifTool::WriteBinaryData, |
1871
|
|
|
|
|
|
|
CHECK_PROC => \&Image::ExifTool::CheckBinaryData, |
1872
|
|
|
|
|
|
|
NOTES => 'Camera settings information for the Sony DSLR-A100.', |
1873
|
|
|
|
|
|
|
WRITABLE => 1, |
1874
|
|
|
|
|
|
|
PRIORITY => 0, # may not be as reliable as other information |
1875
|
|
|
|
|
|
|
GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' }, |
1876
|
|
|
|
|
|
|
FORMAT => 'int16u', |
1877
|
|
|
|
|
|
|
FIRST_ENTRY => 0, |
1878
|
|
|
|
|
|
|
0x00 => { #15 |
1879
|
|
|
|
|
|
|
Name => 'ExposureMode', |
1880
|
|
|
|
|
|
|
PrintHex => 1, |
1881
|
|
|
|
|
|
|
PrintConv => { |
1882
|
|
|
|
|
|
|
0 => 'Program', |
1883
|
|
|
|
|
|
|
1 => 'Aperture Priority', |
1884
|
|
|
|
|
|
|
2 => 'Shutter Priority', |
1885
|
|
|
|
|
|
|
3 => 'Manual', |
1886
|
|
|
|
|
|
|
4 => 'Auto', |
1887
|
|
|
|
|
|
|
5 => 'Program Shift A', #20 |
1888
|
|
|
|
|
|
|
6 => 'Program Shift S', #20 |
1889
|
|
|
|
|
|
|
0x1013 => 'Portrait', |
1890
|
|
|
|
|
|
|
0x1023 => 'Sports', #20 |
1891
|
|
|
|
|
|
|
0x1033 => 'Sunset', #20 |
1892
|
|
|
|
|
|
|
0x1043 => 'Night View/Portrait', #20 |
1893
|
|
|
|
|
|
|
0x1053 => 'Landscape', |
1894
|
|
|
|
|
|
|
0x1083 => 'Macro', #20 |
1895
|
|
|
|
|
|
|
}, |
1896
|
|
|
|
|
|
|
}, |
1897
|
|
|
|
|
|
|
0x01 => { #15 |
1898
|
|
|
|
|
|
|
Name => 'ExposureCompensationSetting', |
1899
|
|
|
|
|
|
|
# (differs from ExposureCompensation for exposure bracketing shots, ref 20) |
1900
|
|
|
|
|
|
|
ValueConv => '$val / 100 - 3', |
1901
|
|
|
|
|
|
|
ValueConvInv => 'int(($val + 3) * 100 + 0.5)', |
1902
|
|
|
|
|
|
|
}, |
1903
|
|
|
|
|
|
|
0x05 => { #20 (requires external flash) |
1904
|
|
|
|
|
|
|
Name => 'HighSpeedSync', |
1905
|
|
|
|
|
|
|
PrintConv => \%offOn, |
1906
|
|
|
|
|
|
|
}, |
1907
|
|
|
|
|
|
|
0x06 => { #20 |
1908
|
|
|
|
|
|
|
Name => 'ShutterSpeedSetting', |
1909
|
|
|
|
|
|
|
Notes => 'used only in M and S exposure modes', |
1910
|
|
|
|
|
|
|
ValueConv => '$val ? 2 ** (6 - $val/8) : 0', |
1911
|
|
|
|
|
|
|
ValueConvInv => '$val ? int((6 - log($val) / log(2)) * 8 + 0.5) : 0', |
1912
|
|
|
|
|
|
|
PrintConv => '$val ? Image::ExifTool::Exif::PrintExposureTime($val) : "Bulb"', |
1913
|
|
|
|
|
|
|
PrintConvInv => 'lc($val) eq "bulb" ? 0 : Image::ExifTool::Exif::ConvertFraction($val)', |
1914
|
|
|
|
|
|
|
}, |
1915
|
|
|
|
|
|
|
0x07 => { #20 |
1916
|
|
|
|
|
|
|
Name => 'ApertureSetting', |
1917
|
|
|
|
|
|
|
Notes => 'used only in M and A exposure modes', |
1918
|
|
|
|
|
|
|
ValueConv => '2 ** (($val/8 - 1) / 2)', |
1919
|
|
|
|
|
|
|
ValueConvInv => 'int((log($val) * 2 / log(2) + 1) * 8 + 0.5)', |
1920
|
|
|
|
|
|
|
PrintConv => 'Image::ExifTool::Exif::PrintFNumber($val)', |
1921
|
|
|
|
|
|
|
PrintConvInv => '$val', |
1922
|
|
|
|
|
|
|
}, |
1923
|
|
|
|
|
|
|
0x08 => { #20 |
1924
|
|
|
|
|
|
|
Name => 'ExposureTime', |
1925
|
|
|
|
|
|
|
ValueConv => '$val ? 2 ** (6 - $val/8) : 0', |
1926
|
|
|
|
|
|
|
ValueConvInv => '$val ? int((6 - log($val) / log(2)) * 8 + 0.5) : 0', |
1927
|
|
|
|
|
|
|
PrintConv => '$val ? Image::ExifTool::Exif::PrintExposureTime($val) : "Bulb"', |
1928
|
|
|
|
|
|
|
PrintConvInv => 'lc($val) eq "bulb" ? 0 : Image::ExifTool::Exif::ConvertFraction($val)', |
1929
|
|
|
|
|
|
|
}, |
1930
|
|
|
|
|
|
|
0x09 => { #15/20 |
1931
|
|
|
|
|
|
|
Name => 'FNumber', |
1932
|
|
|
|
|
|
|
ValueConv => '2 ** (($val/8 - 1) / 2)', |
1933
|
|
|
|
|
|
|
ValueConvInv => 'int((log($val) * 2 / log(2) + 1) * 8 + 0.5)', |
1934
|
|
|
|
|
|
|
PrintConv => 'Image::ExifTool::Exif::PrintFNumber($val)', |
1935
|
|
|
|
|
|
|
PrintConvInv => '$val', |
1936
|
|
|
|
|
|
|
}, |
1937
|
|
|
|
|
|
|
0x0a => { #20 |
1938
|
|
|
|
|
|
|
Name => 'DriveMode2', # (one of these is probably DriveModeSetting like Sony - PH) |
1939
|
|
|
|
|
|
|
PrintHex => 1, |
1940
|
|
|
|
|
|
|
PrintConv => { |
1941
|
|
|
|
|
|
|
0x000 => 'Self-timer 10 sec', |
1942
|
|
|
|
|
|
|
0x001 => 'Continuous', |
1943
|
|
|
|
|
|
|
0x302 => 'Single-frame Bracketing Low', |
1944
|
|
|
|
|
|
|
0x702 => 'Single-frame Bracketing High', |
1945
|
|
|
|
|
|
|
0x303 => 'Continous Bracketing Low', |
1946
|
|
|
|
|
|
|
0x703 => 'Continuous Bracketing High', |
1947
|
|
|
|
|
|
|
0x004 => 'Self-timer 2 sec', |
1948
|
|
|
|
|
|
|
0x005 => 'Single Frame', |
1949
|
|
|
|
|
|
|
0x008 => 'White Balance Bracketing Low', |
1950
|
|
|
|
|
|
|
0x009 => 'White Balance Bracketing High', |
1951
|
|
|
|
|
|
|
}, |
1952
|
|
|
|
|
|
|
}, |
1953
|
|
|
|
|
|
|
0x0b => { #15 |
1954
|
|
|
|
|
|
|
Name => 'WhiteBalance', |
1955
|
|
|
|
|
|
|
PrintHex => 1, |
1956
|
|
|
|
|
|
|
PrintConv => { |
1957
|
|
|
|
|
|
|
0 => 'Auto', |
1958
|
|
|
|
|
|
|
1 => 'Daylight', |
1959
|
|
|
|
|
|
|
2 => 'Cloudy', |
1960
|
|
|
|
|
|
|
3 => 'Shade', |
1961
|
|
|
|
|
|
|
4 => 'Tungsten', |
1962
|
|
|
|
|
|
|
5 => 'Fluorescent', |
1963
|
|
|
|
|
|
|
6 => 'Flash', |
1964
|
|
|
|
|
|
|
0x100 => 'Kelvin', |
1965
|
|
|
|
|
|
|
0x200 => 'Manual', |
1966
|
|
|
|
|
|
|
}, |
1967
|
|
|
|
|
|
|
}, |
1968
|
|
|
|
|
|
|
0x0c => { #20 |
1969
|
|
|
|
|
|
|
Name => 'FocusMode', |
1970
|
|
|
|
|
|
|
PrintConv => { |
1971
|
|
|
|
|
|
|
0 => 'AF-S', |
1972
|
|
|
|
|
|
|
1 => 'AF-C', |
1973
|
|
|
|
|
|
|
4 => 'AF-A', |
1974
|
|
|
|
|
|
|
5 => 'Manual', |
1975
|
|
|
|
|
|
|
6 => 'DMF', |
1976
|
|
|
|
|
|
|
}, |
1977
|
|
|
|
|
|
|
}, |
1978
|
|
|
|
|
|
|
0x0d => { #20 |
1979
|
|
|
|
|
|
|
Name => 'AFPointSelected', # (v8.88: renamed from LocalAFAreaPoint) |
1980
|
|
|
|
|
|
|
# (9-point centre-cross AF system, ref JR) |
1981
|
|
|
|
|
|
|
PrintConv => { |
1982
|
|
|
|
|
|
|
1 => 'Center', |
1983
|
|
|
|
|
|
|
2 => 'Top', |
1984
|
|
|
|
|
|
|
3 => 'Top-right', |
1985
|
|
|
|
|
|
|
4 => 'Right', |
1986
|
|
|
|
|
|
|
5 => 'Bottom-right', |
1987
|
|
|
|
|
|
|
6 => 'Bottom', |
1988
|
|
|
|
|
|
|
7 => 'Bottom-left', |
1989
|
|
|
|
|
|
|
8 => 'Left', |
1990
|
|
|
|
|
|
|
9 => 'Top-left', |
1991
|
|
|
|
|
|
|
}, |
1992
|
|
|
|
|
|
|
}, |
1993
|
|
|
|
|
|
|
0x0e => { #20 |
1994
|
|
|
|
|
|
|
Name => 'AFAreaMode', |
1995
|
|
|
|
|
|
|
PrintConv => { |
1996
|
|
|
|
|
|
|
0 => 'Wide', |
1997
|
|
|
|
|
|
|
1 => 'Local', |
1998
|
|
|
|
|
|
|
2 => 'Spot', |
1999
|
|
|
|
|
|
|
}, |
2000
|
|
|
|
|
|
|
}, |
2001
|
|
|
|
|
|
|
0x0f => { #20 |
2002
|
|
|
|
|
|
|
Name => 'FlashMode', |
2003
|
|
|
|
|
|
|
PrintConv => { |
2004
|
|
|
|
|
|
|
0 => 'Auto', |
2005
|
|
|
|
|
|
|
2 => 'Rear Sync', |
2006
|
|
|
|
|
|
|
3 => 'Wireless', |
2007
|
|
|
|
|
|
|
4 => 'Fill Flash', |
2008
|
|
|
|
|
|
|
}, |
2009
|
|
|
|
|
|
|
}, |
2010
|
|
|
|
|
|
|
0x10 => { #20 |
2011
|
|
|
|
|
|
|
Name => 'FlashExposureCompSet', |
2012
|
|
|
|
|
|
|
Description => 'Flash Exposure Comp. Setting', |
2013
|
|
|
|
|
|
|
# (may differ from FlashExposureComp for flash bracketing shots) |
2014
|
|
|
|
|
|
|
ValueConv => '$val / 100 - 3', |
2015
|
|
|
|
|
|
|
ValueConvInv => 'int(($val + 3) * 100 + 0.5)', |
2016
|
|
|
|
|
|
|
}, |
2017
|
|
|
|
|
|
|
0x12 => { #15/20 |
2018
|
|
|
|
|
|
|
Name => 'MeteringMode', |
2019
|
|
|
|
|
|
|
PrintConv => { |
2020
|
|
|
|
|
|
|
0 => 'Multi-segment', |
2021
|
|
|
|
|
|
|
1 => 'Center-weighted average', |
2022
|
|
|
|
|
|
|
2 => 'Spot', |
2023
|
|
|
|
|
|
|
}, |
2024
|
|
|
|
|
|
|
}, |
2025
|
|
|
|
|
|
|
0x13 => { #15/20 |
2026
|
|
|
|
|
|
|
Name => 'ISOSetting', |
2027
|
|
|
|
|
|
|
PrintConv => { |
2028
|
|
|
|
|
|
|
0 => 'Auto', |
2029
|
|
|
|
|
|
|
48 => 100, |
2030
|
|
|
|
|
|
|
56 => 200, |
2031
|
|
|
|
|
|
|
64 => 400, |
2032
|
|
|
|
|
|
|
72 => 800, |
2033
|
|
|
|
|
|
|
80 => 1600, |
2034
|
|
|
|
|
|
|
174 => '80 (Zone Matching Low)', |
2035
|
|
|
|
|
|
|
184 => '200 (Zone Matching High)', |
2036
|
|
|
|
|
|
|
}, |
2037
|
|
|
|
|
|
|
}, |
2038
|
|
|
|
|
|
|
0x14 => { #15/20 |
2039
|
|
|
|
|
|
|
Name => 'ZoneMatchingMode', |
2040
|
|
|
|
|
|
|
PrintConv => { |
2041
|
|
|
|
|
|
|
0 => 'Off', |
2042
|
|
|
|
|
|
|
1 => 'Standard', |
2043
|
|
|
|
|
|
|
2 => 'Advanced', |
2044
|
|
|
|
|
|
|
}, |
2045
|
|
|
|
|
|
|
}, |
2046
|
|
|
|
|
|
|
0x15 => { #15/20 |
2047
|
|
|
|
|
|
|
Name => 'DynamicRangeOptimizer', |
2048
|
|
|
|
|
|
|
# this and the Sony tag 0xb025 DynamicRangeOptimizer give the actual mode |
2049
|
|
|
|
|
|
|
# applied to the image. The Minolta CameraSettingsA100 0x0027 tag gives |
2050
|
|
|
|
|
|
|
# the setting. There is a longish list of scenarios in which, regardless |
2051
|
|
|
|
|
|
|
# of the latter, DRO is not applied (ref 20) |
2052
|
|
|
|
|
|
|
Notes => 'as applied to image', |
2053
|
|
|
|
|
|
|
PrintConv => { |
2054
|
|
|
|
|
|
|
0 => 'Off', |
2055
|
|
|
|
|
|
|
1 => 'Standard', |
2056
|
|
|
|
|
|
|
2 => 'Advanced', |
2057
|
|
|
|
|
|
|
}, |
2058
|
|
|
|
|
|
|
}, |
2059
|
|
|
|
|
|
|
0x16 => { #15 |
2060
|
|
|
|
|
|
|
Name => 'ColorMode', |
2061
|
|
|
|
|
|
|
PrintConv => { |
2062
|
|
|
|
|
|
|
0 => 'Standard', |
2063
|
|
|
|
|
|
|
1 => 'Vivid', |
2064
|
|
|
|
|
|
|
2 => 'Portrait', |
2065
|
|
|
|
|
|
|
3 => 'Landscape', |
2066
|
|
|
|
|
|
|
4 => 'Sunset', |
2067
|
|
|
|
|
|
|
5 => 'Night Scene', |
2068
|
|
|
|
|
|
|
7 => 'B&W', |
2069
|
|
|
|
|
|
|
8 => 'Adobe RGB', |
2070
|
|
|
|
|
|
|
}, |
2071
|
|
|
|
|
|
|
}, |
2072
|
|
|
|
|
|
|
0x17 => { # 15/20 |
2073
|
|
|
|
|
|
|
Name => 'ColorSpace', |
2074
|
|
|
|
|
|
|
PrintConv => { |
2075
|
|
|
|
|
|
|
0 => 'sRGB', |
2076
|
|
|
|
|
|
|
2 => 'B&W', #PH (A100) |
2077
|
|
|
|
|
|
|
5 => 'Adobe RGB', |
2078
|
|
|
|
|
|
|
}, |
2079
|
|
|
|
|
|
|
}, |
2080
|
|
|
|
|
|
|
0x18 => { #15 |
2081
|
|
|
|
|
|
|
Name => 'Sharpness', |
2082
|
|
|
|
|
|
|
ValueConv => '$val - 10', |
2083
|
|
|
|
|
|
|
ValueConvInv => '$val + 10', |
2084
|
|
|
|
|
|
|
%Image::ExifTool::Exif::printParameter, |
2085
|
|
|
|
|
|
|
}, |
2086
|
|
|
|
|
|
|
0x19 => { #15 |
2087
|
|
|
|
|
|
|
Name => 'Contrast', |
2088
|
|
|
|
|
|
|
ValueConv => '$val - 10', |
2089
|
|
|
|
|
|
|
ValueConvInv => '$val + 10', |
2090
|
|
|
|
|
|
|
%Image::ExifTool::Exif::printParameter, |
2091
|
|
|
|
|
|
|
}, |
2092
|
|
|
|
|
|
|
0x1a => { #15 |
2093
|
|
|
|
|
|
|
Name => 'Saturation', |
2094
|
|
|
|
|
|
|
ValueConv => '$val - 10', |
2095
|
|
|
|
|
|
|
ValueConvInv => '$val + 10', |
2096
|
|
|
|
|
|
|
%Image::ExifTool::Exif::printParameter, |
2097
|
|
|
|
|
|
|
}, |
2098
|
|
|
|
|
|
|
0x1c => { #20 |
2099
|
|
|
|
|
|
|
Name => 'FlashMetering', |
2100
|
|
|
|
|
|
|
PrintConv => { |
2101
|
|
|
|
|
|
|
0 => 'ADI (Advanced Distance Integration)', |
2102
|
|
|
|
|
|
|
1 => 'Pre-flash TTL', |
2103
|
|
|
|
|
|
|
}, |
2104
|
|
|
|
|
|
|
}, |
2105
|
|
|
|
|
|
|
0x1d => { #20 |
2106
|
|
|
|
|
|
|
Name => 'PrioritySetupShutterRelease', |
2107
|
|
|
|
|
|
|
PrintConv => { |
2108
|
|
|
|
|
|
|
0 => 'AF', |
2109
|
|
|
|
|
|
|
1 => 'Release', |
2110
|
|
|
|
|
|
|
}, |
2111
|
|
|
|
|
|
|
}, |
2112
|
|
|
|
|
|
|
0x1e => { #PH |
2113
|
|
|
|
|
|
|
Name => 'DriveMode', |
2114
|
|
|
|
|
|
|
PrintConv => { |
2115
|
|
|
|
|
|
|
0 => 'Single Frame', |
2116
|
|
|
|
|
|
|
1 => 'Continuous', |
2117
|
|
|
|
|
|
|
2 => 'Self-timer', |
2118
|
|
|
|
|
|
|
3 => 'Continuous Bracketing', |
2119
|
|
|
|
|
|
|
4 => 'Single-Frame Bracketing', |
2120
|
|
|
|
|
|
|
5 => 'White Balance Bracketing', |
2121
|
|
|
|
|
|
|
}, |
2122
|
|
|
|
|
|
|
}, |
2123
|
|
|
|
|
|
|
0x1f => { #20 |
2124
|
|
|
|
|
|
|
Name => 'SelfTimerTime', |
2125
|
|
|
|
|
|
|
PrintConv => { |
2126
|
|
|
|
|
|
|
0 => '10 s', |
2127
|
|
|
|
|
|
|
4 => '2 s', |
2128
|
|
|
|
|
|
|
}, |
2129
|
|
|
|
|
|
|
}, |
2130
|
|
|
|
|
|
|
0x20 => { #20 |
2131
|
|
|
|
|
|
|
Name => 'ContinuousBracketing', |
2132
|
|
|
|
|
|
|
PrintHex => 1, |
2133
|
|
|
|
|
|
|
PrintConv => { |
2134
|
|
|
|
|
|
|
0x303 => 'Low', |
2135
|
|
|
|
|
|
|
0x703 => 'High', |
2136
|
|
|
|
|
|
|
}, |
2137
|
|
|
|
|
|
|
}, |
2138
|
|
|
|
|
|
|
0x21 => { #20 |
2139
|
|
|
|
|
|
|
Name => 'SingleFrameBracketing', |
2140
|
|
|
|
|
|
|
PrintHex => 1, |
2141
|
|
|
|
|
|
|
PrintConv => { |
2142
|
|
|
|
|
|
|
0x302 => 'Low', |
2143
|
|
|
|
|
|
|
0x702 => 'High', |
2144
|
|
|
|
|
|
|
}, |
2145
|
|
|
|
|
|
|
}, |
2146
|
|
|
|
|
|
|
0x22 => { #20 |
2147
|
|
|
|
|
|
|
Name => 'WhiteBalanceBracketing', |
2148
|
|
|
|
|
|
|
PrintHex => 1, |
2149
|
|
|
|
|
|
|
PrintConv => { |
2150
|
|
|
|
|
|
|
0x08 => 'Low', |
2151
|
|
|
|
|
|
|
0x09 => 'High', |
2152
|
|
|
|
|
|
|
}, |
2153
|
|
|
|
|
|
|
}, |
2154
|
|
|
|
|
|
|
0x023 => { #20 |
2155
|
|
|
|
|
|
|
Name => 'WhiteBalanceSetting', |
2156
|
|
|
|
|
|
|
PrintHex => 1, |
2157
|
|
|
|
|
|
|
# (not sure what bit 0x8000 indicates) |
2158
|
|
|
|
|
|
|
PrintConv => { |
2159
|
|
|
|
|
|
|
0 => 'Auto', |
2160
|
|
|
|
|
|
|
1 => 'Preset', |
2161
|
|
|
|
|
|
|
2 => 'Custom', |
2162
|
|
|
|
|
|
|
3 => 'Color Temperature/Color Filter', |
2163
|
|
|
|
|
|
|
0x8001 => 'Preset', |
2164
|
|
|
|
|
|
|
0x8002 => 'Custom', |
2165
|
|
|
|
|
|
|
0x8003 => 'Color Temperature/Color Filter', |
2166
|
|
|
|
|
|
|
}, |
2167
|
|
|
|
|
|
|
}, |
2168
|
|
|
|
|
|
|
0x24 => { #20 |
2169
|
|
|
|
|
|
|
Name => 'PresetWhiteBalance', |
2170
|
|
|
|
|
|
|
PrintConv => { |
2171
|
|
|
|
|
|
|
1 => 'Daylight', |
2172
|
|
|
|
|
|
|
2 => 'Cloudy', |
2173
|
|
|
|
|
|
|
3 => 'Shade', |
2174
|
|
|
|
|
|
|
4 => 'Tungsten', |
2175
|
|
|
|
|
|
|
5 => 'Fluorescent', |
2176
|
|
|
|
|
|
|
6 => 'Flash', |
2177
|
|
|
|
|
|
|
}, |
2178
|
|
|
|
|
|
|
}, |
2179
|
|
|
|
|
|
|
0x25 => { #20 |
2180
|
|
|
|
|
|
|
Name => 'ColorTemperatureSetting', |
2181
|
|
|
|
|
|
|
PrintConv => { |
2182
|
|
|
|
|
|
|
0 => 'Temperature', |
2183
|
|
|
|
|
|
|
2 => 'Color Filter', |
2184
|
|
|
|
|
|
|
}, |
2185
|
|
|
|
|
|
|
}, |
2186
|
|
|
|
|
|
|
0x26 => { #20 |
2187
|
|
|
|
|
|
|
Name => 'CustomWBSetting', |
2188
|
|
|
|
|
|
|
PrintConv => { |
2189
|
|
|
|
|
|
|
0 => 'Setup', |
2190
|
|
|
|
|
|
|
1 => 'Recall', |
2191
|
|
|
|
|
|
|
}, |
2192
|
|
|
|
|
|
|
}, |
2193
|
|
|
|
|
|
|
0x27 => { #20 |
2194
|
|
|
|
|
|
|
Name => 'DynamicRangeOptimizerSetting', |
2195
|
|
|
|
|
|
|
Notes => 'as set in camera', |
2196
|
|
|
|
|
|
|
PrintConv => { |
2197
|
|
|
|
|
|
|
0 => 'Off', |
2198
|
|
|
|
|
|
|
1 => 'Standard', |
2199
|
|
|
|
|
|
|
2 => 'Advanced', |
2200
|
|
|
|
|
|
|
}, |
2201
|
|
|
|
|
|
|
}, |
2202
|
|
|
|
|
|
|
0x32 => 'FreeMemoryCardImages', #20 |
2203
|
|
|
|
|
|
|
0x34 => 'CustomWBRedLevel', #20 |
2204
|
|
|
|
|
|
|
0x35 => 'CustomWBGreenLevel', #20 |
2205
|
|
|
|
|
|
|
0x36 => 'CustomWBBlueLevel', #20 |
2206
|
|
|
|
|
|
|
0x37 => { #20 |
2207
|
|
|
|
|
|
|
Name => 'CustomWBError', |
2208
|
|
|
|
|
|
|
PrintConv => { |
2209
|
|
|
|
|
|
|
0 => 'OK', |
2210
|
|
|
|
|
|
|
1 => 'Error', |
2211
|
|
|
|
|
|
|
}, |
2212
|
|
|
|
|
|
|
}, |
2213
|
|
|
|
|
|
|
0x38 => { #20 |
2214
|
|
|
|
|
|
|
Name => 'WhiteBalanceFineTune', |
2215
|
|
|
|
|
|
|
Format => 'int16s', |
2216
|
|
|
|
|
|
|
}, |
2217
|
|
|
|
|
|
|
0x39 => { #20 |
2218
|
|
|
|
|
|
|
Name => 'ColorTemperature', |
2219
|
|
|
|
|
|
|
ValueConv => '$val * 100', |
2220
|
|
|
|
|
|
|
ValueConvInv => '$val / 100', |
2221
|
|
|
|
|
|
|
}, |
2222
|
|
|
|
|
|
|
0x3a => { #20 |
2223
|
|
|
|
|
|
|
Name => 'ColorCompensationFilter', |
2224
|
|
|
|
|
|
|
Format => 'int16s', |
2225
|
|
|
|
|
|
|
Notes => 'ranges from -2 for green to +2 for magenta', |
2226
|
|
|
|
|
|
|
}, |
2227
|
|
|
|
|
|
|
0x3b => { #20 |
2228
|
|
|
|
|
|
|
Name => 'SonyImageSize', |
2229
|
|
|
|
|
|
|
PrintConv => { |
2230
|
|
|
|
|
|
|
0 => 'Standard', |
2231
|
|
|
|
|
|
|
1 => 'Medium', |
2232
|
|
|
|
|
|
|
2 => 'Small', |
2233
|
|
|
|
|
|
|
}, |
2234
|
|
|
|
|
|
|
}, |
2235
|
|
|
|
|
|
|
0x3c => { #20 |
2236
|
|
|
|
|
|
|
Name => 'SonyQuality', |
2237
|
|
|
|
|
|
|
PrintConv => { |
2238
|
|
|
|
|
|
|
0 => 'RAW', |
2239
|
|
|
|
|
|
|
32 => 'Fine', |
2240
|
|
|
|
|
|
|
34 => 'RAW + JPEG', |
2241
|
|
|
|
|
|
|
48 => 'Standard', |
2242
|
|
|
|
|
|
|
}, |
2243
|
|
|
|
|
|
|
}, |
2244
|
|
|
|
|
|
|
0x3d => { #20 |
2245
|
|
|
|
|
|
|
Name => 'InstantPlaybackTime', |
2246
|
|
|
|
|
|
|
PrintConv => '"$val s"', |
2247
|
|
|
|
|
|
|
PrintConvInv => '$val=~s/\s*s//; $val', |
2248
|
|
|
|
|
|
|
}, |
2249
|
|
|
|
|
|
|
0x3e => { #20 |
2250
|
|
|
|
|
|
|
Name => 'InstantPlaybackSetup', |
2251
|
|
|
|
|
|
|
PrintConv => { |
2252
|
|
|
|
|
|
|
0 => 'Image and Information', |
2253
|
|
|
|
|
|
|
1 => 'Image Only', |
2254
|
|
|
|
|
|
|
# 2 appears to be unused |
2255
|
|
|
|
|
|
|
3 => 'Image and Histogram', |
2256
|
|
|
|
|
|
|
}, |
2257
|
|
|
|
|
|
|
}, |
2258
|
|
|
|
|
|
|
0x3f => { #PH |
2259
|
|
|
|
|
|
|
Name => 'NoiseReduction', |
2260
|
|
|
|
|
|
|
PrintConv => \%offOn, |
2261
|
|
|
|
|
|
|
}, |
2262
|
|
|
|
|
|
|
0x40 => { #20 |
2263
|
|
|
|
|
|
|
Name => 'EyeStartAF', |
2264
|
|
|
|
|
|
|
PrintConv => \%onOff, |
2265
|
|
|
|
|
|
|
}, |
2266
|
|
|
|
|
|
|
0x41 => { #20 |
2267
|
|
|
|
|
|
|
Name => 'RedEyeReduction', |
2268
|
|
|
|
|
|
|
PrintConv => \%offOn, |
2269
|
|
|
|
|
|
|
}, |
2270
|
|
|
|
|
|
|
0x42 => { #20 |
2271
|
|
|
|
|
|
|
Name => 'FlashDefault', |
2272
|
|
|
|
|
|
|
PrintConv => { |
2273
|
|
|
|
|
|
|
0 => 'Auto', |
2274
|
|
|
|
|
|
|
1 => 'Fill Flash', |
2275
|
|
|
|
|
|
|
}, |
2276
|
|
|
|
|
|
|
}, |
2277
|
|
|
|
|
|
|
0x43 => { #20 |
2278
|
|
|
|
|
|
|
Name => 'AutoBracketOrder', |
2279
|
|
|
|
|
|
|
PrintConv => { |
2280
|
|
|
|
|
|
|
0 => '0 - +', |
2281
|
|
|
|
|
|
|
1 => '- 0 +', |
2282
|
|
|
|
|
|
|
}, |
2283
|
|
|
|
|
|
|
}, |
2284
|
|
|
|
|
|
|
0x44 => { #20 |
2285
|
|
|
|
|
|
|
Name => 'FocusHoldButton', |
2286
|
|
|
|
|
|
|
PrintConv => { |
2287
|
|
|
|
|
|
|
0 => 'Focus Hold', |
2288
|
|
|
|
|
|
|
1 => 'DOF Preview', |
2289
|
|
|
|
|
|
|
}, |
2290
|
|
|
|
|
|
|
}, |
2291
|
|
|
|
|
|
|
0x45 => { #20 |
2292
|
|
|
|
|
|
|
Name => 'AELButton', |
2293
|
|
|
|
|
|
|
PrintConv => { |
2294
|
|
|
|
|
|
|
0 => 'Hold', |
2295
|
|
|
|
|
|
|
1 => 'Toggle', |
2296
|
|
|
|
|
|
|
2 => 'Spot Hold', |
2297
|
|
|
|
|
|
|
3 => 'Spot Toggle', |
2298
|
|
|
|
|
|
|
}, |
2299
|
|
|
|
|
|
|
}, |
2300
|
|
|
|
|
|
|
0x46 => { #20 |
2301
|
|
|
|
|
|
|
Name => 'ControlDialSet', |
2302
|
|
|
|
|
|
|
PrintConv => { |
2303
|
|
|
|
|
|
|
0 => 'Shutter Speed', |
2304
|
|
|
|
|
|
|
1 => 'Aperture', |
2305
|
|
|
|
|
|
|
}, |
2306
|
|
|
|
|
|
|
}, |
2307
|
|
|
|
|
|
|
0x47 => { #20 |
2308
|
|
|
|
|
|
|
Name => 'ExposureCompensationMode', |
2309
|
|
|
|
|
|
|
PrintConv => { |
2310
|
|
|
|
|
|
|
0 => 'Ambient and Flash', |
2311
|
|
|
|
|
|
|
1 => 'Ambient Only', |
2312
|
|
|
|
|
|
|
}, |
2313
|
|
|
|
|
|
|
}, |
2314
|
|
|
|
|
|
|
0x48 => { #20 |
2315
|
|
|
|
|
|
|
Name => 'AFAssist', |
2316
|
|
|
|
|
|
|
PrintConv => \%onOff, |
2317
|
|
|
|
|
|
|
}, |
2318
|
|
|
|
|
|
|
0x49 => { #20 |
2319
|
|
|
|
|
|
|
Name => 'CardShutterLock', |
2320
|
|
|
|
|
|
|
PrintConv => \%onOff, |
2321
|
|
|
|
|
|
|
}, |
2322
|
|
|
|
|
|
|
0x4a => { #20 |
2323
|
|
|
|
|
|
|
Name => 'LensShutterLock', |
2324
|
|
|
|
|
|
|
PrintConv => \%onOff, |
2325
|
|
|
|
|
|
|
}, |
2326
|
|
|
|
|
|
|
0x4b => { #20 |
2327
|
|
|
|
|
|
|
Name => 'AFAreaIllumination', |
2328
|
|
|
|
|
|
|
PrintConv => { |
2329
|
|
|
|
|
|
|
0 => '0.3 s', |
2330
|
|
|
|
|
|
|
1 => '0.6 s', |
2331
|
|
|
|
|
|
|
2 => 'Off', |
2332
|
|
|
|
|
|
|
}, |
2333
|
|
|
|
|
|
|
}, |
2334
|
|
|
|
|
|
|
0x4c => { #20 |
2335
|
|
|
|
|
|
|
Name => 'MonitorDisplayOff', |
2336
|
|
|
|
|
|
|
PrintConv => { |
2337
|
|
|
|
|
|
|
0 => 'Automatic', |
2338
|
|
|
|
|
|
|
1 => 'Manual', |
2339
|
|
|
|
|
|
|
}, |
2340
|
|
|
|
|
|
|
}, |
2341
|
|
|
|
|
|
|
0x4d => { #20 |
2342
|
|
|
|
|
|
|
Name => 'RecordDisplay', |
2343
|
|
|
|
|
|
|
PrintConv => { |
2344
|
|
|
|
|
|
|
0 => 'Auto Rotate', |
2345
|
|
|
|
|
|
|
1 => 'Horizontal', |
2346
|
|
|
|
|
|
|
}, |
2347
|
|
|
|
|
|
|
}, |
2348
|
|
|
|
|
|
|
0x4e => { #20 |
2349
|
|
|
|
|
|
|
Name => 'PlayDisplay', |
2350
|
|
|
|
|
|
|
PrintConv => { |
2351
|
|
|
|
|
|
|
0 => 'Auto Rotate', |
2352
|
|
|
|
|
|
|
1 => 'Manual Rotate', |
2353
|
|
|
|
|
|
|
}, |
2354
|
|
|
|
|
|
|
}, |
2355
|
|
|
|
|
|
|
0x50 => { #20 |
2356
|
|
|
|
|
|
|
Name => 'ExposureIndicator', |
2357
|
|
|
|
|
|
|
SeparateTable => 'ExposureIndicator', |
2358
|
|
|
|
|
|
|
PrintConv => \%exposureIndicator, |
2359
|
|
|
|
|
|
|
}, |
2360
|
|
|
|
|
|
|
0x51 => { #20 |
2361
|
|
|
|
|
|
|
Name => 'AELExposureIndicator', |
2362
|
|
|
|
|
|
|
Notes => 'also indicates exposure for next shot when bracketing', |
2363
|
|
|
|
|
|
|
SeparateTable => 'ExposureIndicator', |
2364
|
|
|
|
|
|
|
PrintConv => \%exposureIndicator, |
2365
|
|
|
|
|
|
|
}, |
2366
|
|
|
|
|
|
|
0x52 => { #20 |
2367
|
|
|
|
|
|
|
Name => 'ExposureBracketingIndicatorLast', |
2368
|
|
|
|
|
|
|
Notes => 'indicator for last shot when bracketing', |
2369
|
|
|
|
|
|
|
SeparateTable => 'ExposureIndicator', |
2370
|
|
|
|
|
|
|
PrintConv => \%exposureIndicator, |
2371
|
|
|
|
|
|
|
}, |
2372
|
|
|
|
|
|
|
0x53 => { #20 |
2373
|
|
|
|
|
|
|
Name => 'MeteringOffScaleIndicator', |
2374
|
|
|
|
|
|
|
Notes => 'two flashing triangles when under or over metering scale', |
2375
|
|
|
|
|
|
|
PrintConv => { |
2376
|
|
|
|
|
|
|
0 => 'Within Range', |
2377
|
|
|
|
|
|
|
1 => 'Under/Over Range', |
2378
|
|
|
|
|
|
|
255 => 'Out of Range', |
2379
|
|
|
|
|
|
|
}, |
2380
|
|
|
|
|
|
|
}, |
2381
|
|
|
|
|
|
|
0x54 => { #20 |
2382
|
|
|
|
|
|
|
Name => 'FlashExposureIndicator', |
2383
|
|
|
|
|
|
|
SeparateTable => 'ExposureIndicator', |
2384
|
|
|
|
|
|
|
PrintConv => \%exposureIndicator, |
2385
|
|
|
|
|
|
|
}, |
2386
|
|
|
|
|
|
|
0x55 => { #20 |
2387
|
|
|
|
|
|
|
Name => 'FlashExposureIndicatorNext', |
2388
|
|
|
|
|
|
|
Notes => 'indicator for next shot when bracketing', |
2389
|
|
|
|
|
|
|
SeparateTable => 'ExposureIndicator', |
2390
|
|
|
|
|
|
|
PrintConv => \%exposureIndicator, |
2391
|
|
|
|
|
|
|
}, |
2392
|
|
|
|
|
|
|
0x56 => { #20 |
2393
|
|
|
|
|
|
|
Name => 'FlashExposureIndicatorLast', |
2394
|
|
|
|
|
|
|
Notes => 'indicator for last shot when bracketing', |
2395
|
|
|
|
|
|
|
SeparateTable => 'ExposureIndicator', |
2396
|
|
|
|
|
|
|
PrintConv => \%exposureIndicator, |
2397
|
|
|
|
|
|
|
}, |
2398
|
|
|
|
|
|
|
0x58 => { #20 |
2399
|
|
|
|
|
|
|
Name => 'FocusModeSwitch', |
2400
|
|
|
|
|
|
|
PrintConv => { |
2401
|
|
|
|
|
|
|
0 => 'AF', |
2402
|
|
|
|
|
|
|
1 => 'MF', |
2403
|
|
|
|
|
|
|
}, |
2404
|
|
|
|
|
|
|
}, |
2405
|
|
|
|
|
|
|
0x59 => { #20 |
2406
|
|
|
|
|
|
|
Name => 'FlashType', |
2407
|
|
|
|
|
|
|
PrintConv => { |
2408
|
|
|
|
|
|
|
0 => 'Off', |
2409
|
|
|
|
|
|
|
1 => 'Built-in', # (also when built-in flash is a trigger in wireless mode) |
2410
|
|
|
|
|
|
|
2 => 'External', |
2411
|
|
|
|
|
|
|
}, |
2412
|
|
|
|
|
|
|
}, |
2413
|
|
|
|
|
|
|
0x5a => { #15 |
2414
|
|
|
|
|
|
|
Name => 'Rotation', |
2415
|
|
|
|
|
|
|
PrintConv => { |
2416
|
|
|
|
|
|
|
0 => 'Horizontal (Normal)', |
2417
|
|
|
|
|
|
|
1 => 'Rotate 270 CW', |
2418
|
|
|
|
|
|
|
2 => 'Rotate 90 CW', |
2419
|
|
|
|
|
|
|
}, |
2420
|
|
|
|
|
|
|
}, |
2421
|
|
|
|
|
|
|
0x5b => { #20 |
2422
|
|
|
|
|
|
|
Name => 'AELock', |
2423
|
|
|
|
|
|
|
PrintConv => \%offOn, |
2424
|
|
|
|
|
|
|
}, |
2425
|
|
|
|
|
|
|
0x57 => { #15 |
2426
|
|
|
|
|
|
|
Name => 'ImageStabilization', |
2427
|
|
|
|
|
|
|
PrintConv => \%offOn, |
2428
|
|
|
|
|
|
|
}, |
2429
|
|
|
|
|
|
|
0x5e => { #15 |
2430
|
|
|
|
|
|
|
Name => 'ColorTemperature', |
2431
|
|
|
|
|
|
|
ValueConv => '$val * 100', |
2432
|
|
|
|
|
|
|
ValueConvInv => '$val / 100', |
2433
|
|
|
|
|
|
|
}, |
2434
|
|
|
|
|
|
|
0x5f => { #20 |
2435
|
|
|
|
|
|
|
Name => 'ColorCompensationFilter', |
2436
|
|
|
|
|
|
|
Format => 'int16s', |
2437
|
|
|
|
|
|
|
Notes => 'ranges from -2 for green to +2 for magenta', |
2438
|
|
|
|
|
|
|
}, |
2439
|
|
|
|
|
|
|
0x60 => { #20 |
2440
|
|
|
|
|
|
|
Name => 'BatteryState', |
2441
|
|
|
|
|
|
|
PrintConv => { |
2442
|
|
|
|
|
|
|
3 => 'Very Low', |
2443
|
|
|
|
|
|
|
4 => 'Low', |
2444
|
|
|
|
|
|
|
5 => 'Half Full', |
2445
|
|
|
|
|
|
|
6 => 'Sufficient Power Remaining', |
2446
|
|
|
|
|
|
|
}, |
2447
|
|
|
|
|
|
|
}, |
2448
|
|
|
|
|
|
|
); |
2449
|
|
|
|
|
|
|
|
2450
|
|
|
|
|
|
|
# white balance information stored by the Sony DSLR-A100 (ref 20) |
2451
|
|
|
|
|
|
|
%Image::ExifTool::Minolta::WBInfoA100 = ( |
2452
|
|
|
|
|
|
|
PROCESS_PROC => \&Image::ExifTool::ProcessBinaryData, |
2453
|
|
|
|
|
|
|
WRITE_PROC => \&Image::ExifTool::WriteBinaryData, |
2454
|
|
|
|
|
|
|
CHECK_PROC => \&Image::ExifTool::CheckBinaryData, |
2455
|
|
|
|
|
|
|
NOTES => 'White balance information for the Sony DSLR-A100.', |
2456
|
|
|
|
|
|
|
WRITABLE => 1, |
2457
|
|
|
|
|
|
|
GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' }, |
2458
|
|
|
|
|
|
|
FIRST_ENTRY => 0, |
2459
|
|
|
|
|
|
|
PRIORITY => 0, |
2460
|
|
|
|
|
|
|
0x0e => { |
2461
|
|
|
|
|
|
|
Name => 'DriveMode', |
2462
|
|
|
|
|
|
|
PrintConv => { |
2463
|
|
|
|
|
|
|
0 => 'Self-timer 10 sec', |
2464
|
|
|
|
|
|
|
1 => 'Continuous', |
2465
|
|
|
|
|
|
|
2 => 'Single-frame Exposure Bracketing', |
2466
|
|
|
|
|
|
|
3 => 'Continuous Exposure Bracketing', |
2467
|
|
|
|
|
|
|
4 => 'Self-Timer 2 sec', |
2468
|
|
|
|
|
|
|
5 => 'Single Frame', |
2469
|
|
|
|
|
|
|
8 => 'White Balance Bracketing Low', |
2470
|
|
|
|
|
|
|
9 => 'White Balance Bracketing High', |
2471
|
|
|
|
|
|
|
}, |
2472
|
|
|
|
|
|
|
}, |
2473
|
|
|
|
|
|
|
0x10 => { |
2474
|
|
|
|
|
|
|
Name => 'Rotation', |
2475
|
|
|
|
|
|
|
PrintConv => { |
2476
|
|
|
|
|
|
|
0 => 'Horizontal (normal)', |
2477
|
|
|
|
|
|
|
1 => 'Rotate 270 CW', |
2478
|
|
|
|
|
|
|
2 => 'Rotate 90 CW', |
2479
|
|
|
|
|
|
|
}, |
2480
|
|
|
|
|
|
|
}, |
2481
|
|
|
|
|
|
|
0x14 => { |
2482
|
|
|
|
|
|
|
Name => 'ImageStabilizationSetting', |
2483
|
|
|
|
|
|
|
PrintConv => { 0 => 'Off', 1 => 'On' }, |
2484
|
|
|
|
|
|
|
}, |
2485
|
|
|
|
|
|
|
0x15 => { |
2486
|
|
|
|
|
|
|
Name => 'DynamicRangeOptimizerMode', |
2487
|
|
|
|
|
|
|
PrintConv => { |
2488
|
|
|
|
|
|
|
0 => 'Off', |
2489
|
|
|
|
|
|
|
1 => 'Standard', |
2490
|
|
|
|
|
|
|
2 => 'Advanced', |
2491
|
|
|
|
|
|
|
}, |
2492
|
|
|
|
|
|
|
}, |
2493
|
|
|
|
|
|
|
0x2a => { |
2494
|
|
|
|
|
|
|
Name => 'ExposureCompensationMode', |
2495
|
|
|
|
|
|
|
PrintConv => { |
2496
|
|
|
|
|
|
|
0 => 'Ambient and Flash', |
2497
|
|
|
|
|
|
|
1 => 'Ambient Only', |
2498
|
|
|
|
|
|
|
}, |
2499
|
|
|
|
|
|
|
}, |
2500
|
|
|
|
|
|
|
0x2b => 'WBBracketShotNumber', |
2501
|
|
|
|
|
|
|
0x2c => { |
2502
|
|
|
|
|
|
|
Name => 'WhiteBalanceBracketing', |
2503
|
|
|
|
|
|
|
PrintConv => { |
2504
|
|
|
|
|
|
|
0 => 'Off', |
2505
|
|
|
|
|
|
|
1 => 'Low', |
2506
|
|
|
|
|
|
|
2 => 'High', |
2507
|
|
|
|
|
|
|
}, |
2508
|
|
|
|
|
|
|
}, |
2509
|
|
|
|
|
|
|
0x2d => 'ExposureBracketShotNumber', |
2510
|
|
|
|
|
|
|
0x31 => { |
2511
|
|
|
|
|
|
|
Name => 'FlashFunction', |
2512
|
|
|
|
|
|
|
Format => 'int16u', |
2513
|
|
|
|
|
|
|
PrintHex => 1, |
2514
|
|
|
|
|
|
|
PrintConv => { |
2515
|
|
|
|
|
|
|
0x0000 => 'No flash', |
2516
|
|
|
|
|
|
|
0x0300 => 'Built-in flash', |
2517
|
|
|
|
|
|
|
# (the following refers to an external flash) |
2518
|
|
|
|
|
|
|
0x1205 => 'Manual', |
2519
|
|
|
|
|
|
|
0x120e => 'Strobe', |
2520
|
|
|
|
|
|
|
#0x122e => ? |
2521
|
|
|
|
|
|
|
0x128e => 'Fill flash, Pre-flash TTL', |
2522
|
|
|
|
|
|
|
0x12ae => 'Bounce flash', |
2523
|
|
|
|
|
|
|
0x140e => 'Rear sync, ADI', |
2524
|
|
|
|
|
|
|
0x148e => 'Fill flash, ADI', |
2525
|
|
|
|
|
|
|
0x1580 => 'Wireless', |
2526
|
|
|
|
|
|
|
# 0x17ae => ? |
2527
|
|
|
|
|
|
|
0x178e => 'HSS', |
2528
|
|
|
|
|
|
|
}, |
2529
|
|
|
|
|
|
|
}, |
2530
|
|
|
|
|
|
|
0x34 => { |
2531
|
|
|
|
|
|
|
Name => 'ExposureMode', |
2532
|
|
|
|
|
|
|
Format => 'int16u', |
2533
|
|
|
|
|
|
|
PrintHex => 1, |
2534
|
|
|
|
|
|
|
PrintConvColumns => 2, |
2535
|
|
|
|
|
|
|
PrintConv => { |
2536
|
|
|
|
|
|
|
0x0000 => 'Program', |
2537
|
|
|
|
|
|
|
0x0001 => 'Aperture Priority', |
2538
|
|
|
|
|
|
|
0x0002 => 'Shutter Priority', |
2539
|
|
|
|
|
|
|
0x0003 => 'Manual', |
2540
|
|
|
|
|
|
|
0x0004 => 'Auto', |
2541
|
|
|
|
|
|
|
0x0005 => 'Program Shift A', |
2542
|
|
|
|
|
|
|
0x0006 => 'Program Shift S', |
2543
|
|
|
|
|
|
|
0x1013 => 'Portrait', |
2544
|
|
|
|
|
|
|
0x1023 => 'Sports', |
2545
|
|
|
|
|
|
|
0x1033 => 'Sunset', |
2546
|
|
|
|
|
|
|
0x1043 => 'Night View/Portrait', |
2547
|
|
|
|
|
|
|
0x1053 => 'Landscape', |
2548
|
|
|
|
|
|
|
0x1083 => 'Macro', |
2549
|
|
|
|
|
|
|
}, |
2550
|
|
|
|
|
|
|
}, |
2551
|
|
|
|
|
|
|
0x36 => { |
2552
|
|
|
|
|
|
|
Name => 'ColorMode', |
2553
|
|
|
|
|
|
|
Format => 'int16u', |
2554
|
|
|
|
|
|
|
PrintConv => { |
2555
|
|
|
|
|
|
|
0x00 => 'Standard', |
2556
|
|
|
|
|
|
|
0x01 => 'Vivid', |
2557
|
|
|
|
|
|
|
0x02 => 'Portrait', |
2558
|
|
|
|
|
|
|
0x03 => 'Landscape', |
2559
|
|
|
|
|
|
|
0x04 => 'Sunset', |
2560
|
|
|
|
|
|
|
0x05 => 'Night View', |
2561
|
|
|
|
|
|
|
0x07 => 'B&W', |
2562
|
|
|
|
|
|
|
0x08 => 'Adobe RGB', |
2563
|
|
|
|
|
|
|
}, |
2564
|
|
|
|
|
|
|
}, |
2565
|
|
|
|
|
|
|
0x38 => { |
2566
|
|
|
|
|
|
|
Name => 'AverageLV', |
2567
|
|
|
|
|
|
|
Format => 'int16u', |
2568
|
|
|
|
|
|
|
Notes => 'arithmetic mean of the readings from the 40 honeycomb segments', |
2569
|
|
|
|
|
|
|
ValueConv => '($val-106)/8', |
2570
|
|
|
|
|
|
|
ValueConvInv => '$val * 8 + 106', |
2571
|
|
|
|
|
|
|
}, |
2572
|
|
|
|
|
|
|
# 0x3a - int16u: Approx FocusDistance in metres (0x0f50=inf) |
2573
|
|
|
|
|
|
|
0x3c => { |
2574
|
|
|
|
|
|
|
Name => 'FrameNumber', |
2575
|
|
|
|
|
|
|
# Numbers > 1 appear in continuous and continuous bracketing drive modes, |
2576
|
|
|
|
|
|
|
# as well as WB bracketing. |
2577
|
|
|
|
|
|
|
}, |
2578
|
|
|
|
|
|
|
0x96 => { Name => 'WB_RGBLevels', Format => 'int16u[3]' }, |
2579
|
|
|
|
|
|
|
0xae => { Name => 'WB_GBRGLevels', Format => 'int16u[4]' }, |
2580
|
|
|
|
|
|
|
0xc0 => { |
2581
|
|
|
|
|
|
|
Name => 'WB_RedLevelsTungsten', |
2582
|
|
|
|
|
|
|
Notes => '7 values for adjustments of -3 through +3', |
2583
|
|
|
|
|
|
|
Format => 'int16u[7]', |
2584
|
|
|
|
|
|
|
}, |
2585
|
|
|
|
|
|
|
0xce => { Name => 'WB_BlueLevelsTungsten', Format => 'int16u[7]' }, |
2586
|
|
|
|
|
|
|
0xdc => { Name => 'WB_RedLevelsDaylight', Format => 'int16u[7]' }, |
2587
|
|
|
|
|
|
|
0xea => { Name => 'WB_BlueLevelsDaylight', Format => 'int16u[7]' }, |
2588
|
|
|
|
|
|
|
0xf8 => { Name => 'WB_RedLevelsCloudy', Format => 'int16u[7]' }, |
2589
|
|
|
|
|
|
|
0x106 => { Name => 'WB_BlueLevelsCloudy', Format => 'int16u[7]' }, |
2590
|
|
|
|
|
|
|
0x114 => { Name => 'WB_RedLevelsFlash', Format => 'int16u[7]' }, |
2591
|
|
|
|
|
|
|
0x122 => { Name => 'WB_BlueLevelsFlash', Format => 'int16u[7]' }, |
2592
|
|
|
|
|
|
|
0x14c => { |
2593
|
|
|
|
|
|
|
Name => 'WB_RedLevelsFluorescent', |
2594
|
|
|
|
|
|
|
Format => 'int16u[7]', |
2595
|
|
|
|
|
|
|
Notes => q{ |
2596
|
|
|
|
|
|
|
white balance red presets for fluorescent -2 through +4: -2=Fluorescent, |
2597
|
|
|
|
|
|
|
-1=WhiteFluorescent, 0=CoolWhiteFluorescent, +1=DayWhiteFluorescent and |
2598
|
|
|
|
|
|
|
+3=DaylightFluorescent |
2599
|
|
|
|
|
|
|
}, |
2600
|
|
|
|
|
|
|
}, |
2601
|
|
|
|
|
|
|
0x15a => { Name => 'WB_BlueLevelsFluorescent', Format => 'int16u[7]' }, |
2602
|
|
|
|
|
|
|
0x168 => { Name => 'WB_RedLevelsShade', Format => 'int16u[7]' }, |
2603
|
|
|
|
|
|
|
0x176 => { Name => 'WB_BlueLevelsShade', Format => 'int16u[7]' }, |
2604
|
|
|
|
|
|
|
0x188 => { Name => 'WB_RedLevel6500K', Format => 'int16u' }, |
2605
|
|
|
|
|
|
|
0x18a => { Name => 'WB_BlueLevel6500K', Format => 'int16u' }, |
2606
|
|
|
|
|
|
|
0x18c => { Name => 'WB_RedLevelCustom', Format => 'int16u' }, |
2607
|
|
|
|
|
|
|
0x18e => { Name => 'WB_BlueLevelCustom', Format => 'int16u' }, |
2608
|
|
|
|
|
|
|
0x198 => { Name => 'WB_RedLevel3500K', Format => 'int16u' }, |
2609
|
|
|
|
|
|
|
0x19a => { Name => 'WB_BlueLevel3500K', Format => 'int16u' }, |
2610
|
|
|
|
|
|
|
0x1be => { |
2611
|
|
|
|
|
|
|
Name => 'WB_RedLevelsKelvin', |
2612
|
|
|
|
|
|
|
Format => 'int16u[75]', |
2613
|
|
|
|
|
|
|
Notes => 'values for 2500-9900 K, in increments of 100 K', |
2614
|
|
|
|
|
|
|
}, |
2615
|
|
|
|
|
|
|
0x254 => { Name => 'WB_BlueLevelsKelvin', Format => 'int16u[75]' }, |
2616
|
|
|
|
|
|
|
0x304 => { Name => 'WB_RBLevelsFlash', Format => 'int16u[2]' }, |
2617
|
|
|
|
|
|
|
0x308 => { Name => 'WB_RBLevelsCoolWhiteF', Format => 'int16u[2]' }, |
2618
|
|
|
|
|
|
|
0x3e8 => { Name => 'WB_RBLevelsTungsten', Format => 'int16u[2]' }, |
2619
|
|
|
|
|
|
|
0x3ec => { Name => 'WB_RBLevelsDaylight', Format => 'int16u[2]' }, |
2620
|
|
|
|
|
|
|
0x3f0 => { Name => 'WB_RBLevelsCloudy', Format => 'int16u[2]' }, |
2621
|
|
|
|
|
|
|
0x3f4 => { Name => 'WB_RBLevelsFlash', Format => 'int16u[2]' }, |
2622
|
|
|
|
|
|
|
0x3fc => { Name => 'WB_RedLevelsFluorescent', Format => 'int16u[7]' }, |
2623
|
|
|
|
|
|
|
0x40a => { Name => 'WB_BlueLevelsFluorescent', Format => 'int16u[7]' }, |
2624
|
|
|
|
|
|
|
0x418 => { Name => 'WB_RBLevelsShade', Format => 'int16u[2]' }, |
2625
|
|
|
|
|
|
|
0x420 => { Name => 'WB_RBLevels6500K', Format => 'int16u[2]' }, |
2626
|
|
|
|
|
|
|
0x424 => { Name => 'WB_RBLevelsCustom', Format => 'int16u[2]' }, |
2627
|
|
|
|
|
|
|
0x430 => { Name => 'WB_RBLevels3500K', Format => 'int16u[2]' }, |
2628
|
|
|
|
|
|
|
0x528 => { Name => 'WB_RBLevelsDaylight', Format => 'int16u[2]' }, |
2629
|
|
|
|
|
|
|
0x546 => { Name => 'WB_RGBLevels', Format => 'int16u[3]' }, |
2630
|
|
|
|
|
|
|
0x628 => { |
2631
|
|
|
|
|
|
|
Name => 'AEMeteringSegments', |
2632
|
|
|
|
|
|
|
Format => 'int8u[40]', |
2633
|
|
|
|
|
|
|
Notes => q{ |
2634
|
|
|
|
|
|
|
metering values from the 40 honeycomb segments, converted to LV. The first |
2635
|
|
|
|
|
|
|
value is for the outer cell, then the values are given row by row, from top |
2636
|
|
|
|
|
|
|
to bottom, with each row scanned left-to-right. The 21st value is the |
2637
|
|
|
|
|
|
|
middle cell, which gives the spot metering |
2638
|
|
|
|
|
|
|
}, |
2639
|
|
|
|
|
|
|
ValueConv => sub { join ' ', map( { ($_ - 106) / 8 } split(' ',$_[0]) ) }, |
2640
|
|
|
|
|
|
|
ValueConvInv => sub { join ' ', map( { int($_ * 8 + 106.5) } split(' ',$_[0]) ) }, |
2641
|
|
|
|
|
|
|
}, |
2642
|
|
|
|
|
|
|
0x690 => { |
2643
|
|
|
|
|
|
|
Name => 'MeasuredLV', |
2644
|
|
|
|
|
|
|
Notes => 'measured light value based on MeteringMode', |
2645
|
|
|
|
|
|
|
ValueConv => '($val-106)/8', |
2646
|
|
|
|
|
|
|
ValueConvInv => '$val * 8 + 106', |
2647
|
|
|
|
|
|
|
}, |
2648
|
|
|
|
|
|
|
0x691 => { |
2649
|
|
|
|
|
|
|
Name => 'BrightnessValue', |
2650
|
|
|
|
|
|
|
ValueConv => '($val-106)/8', |
2651
|
|
|
|
|
|
|
ValueConvInv => '$val * 8 + 106', |
2652
|
|
|
|
|
|
|
}, |
2653
|
|
|
|
|
|
|
# 0x87f - int8u: 33mm Equivalent magnification (FocusDistance = (1.5 * $val + 1) * FocalLength) (255=inf) |
2654
|
|
|
|
|
|
|
0x104c => { # (9600 bytes: 4 sets of 40x30 int16u values in the range 0-8191) |
2655
|
|
|
|
|
|
|
Name => 'TiffMeteringImage', |
2656
|
|
|
|
|
|
|
Format => 'undef[9600]', |
2657
|
|
|
|
|
|
|
Notes => q{ |
2658
|
|
|
|
|
|
|
13-bit RBGG (?) 40x30 pixels, presumably metering info, converted to a 16-bit |
2659
|
|
|
|
|
|
|
TIFF image; |
2660
|
|
|
|
|
|
|
}, |
2661
|
|
|
|
|
|
|
ValueConv => sub { |
2662
|
|
|
|
|
|
|
my ($val, $et) = @_; |
2663
|
|
|
|
|
|
|
return undef unless length $val >= 9600; |
2664
|
|
|
|
|
|
|
return \ "Binary data 7404 bytes" unless $et->Options('Binary'); |
2665
|
|
|
|
|
|
|
my @dat = unpack('n*', $val); # for Big-endian |
2666
|
|
|
|
|
|
|
# TIFF header for a 16-bit RGB 10dpi 40x30 image |
2667
|
|
|
|
|
|
|
$val = Image::ExifTool::MakeTiffHeader(40,30,3,16,10); |
2668
|
|
|
|
|
|
|
# re-order data to RGB pixels |
2669
|
|
|
|
|
|
|
my ($i, @val); |
2670
|
|
|
|
|
|
|
for ($i=0; $i<40*30; ++$i) { |
2671
|
|
|
|
|
|
|
# data is 13-bit (max 8191), shift left to fill 16 bits |
2672
|
|
|
|
|
|
|
# (typically, this gives a very dark image since the data should |
2673
|
|
|
|
|
|
|
# really be anti-logged to convert from EV to perceived brightness) |
2674
|
|
|
|
|
|
|
# push @val, $dat[$i]<<3, $dat[$i+2400]<<3, $dat[$i+1200]<<3; |
2675
|
|
|
|
|
|
|
push @val, int(5041.1*log($dat[$i]+1)/log(2)), int(5041.1*log($dat[$i+2400]+1)/log(2)), int(5041.1*log($dat[$i+1200]+1)/log(2)); |
2676
|
|
|
|
|
|
|
} |
2677
|
|
|
|
|
|
|
$val .= pack('v*', @val); # add TIFF strip data |
2678
|
|
|
|
|
|
|
return \$val; |
2679
|
|
|
|
|
|
|
}, |
2680
|
|
|
|
|
|
|
}, |
2681
|
|
|
|
|
|
|
0x49b8 => { |
2682
|
|
|
|
|
|
|
Name => 'ExposureTime', |
2683
|
|
|
|
|
|
|
ValueConv => '$val ? 2 ** (6 - $val/8) : 0', |
2684
|
|
|
|
|
|
|
ValueConvInv => '$val ? int((6 - log($val) / log(2)) * 8 + 0.5) : 0', |
2685
|
|
|
|
|
|
|
PrintConv => '$val ? Image::ExifTool::Exif::PrintExposureTime($val) : "Bulb"', |
2686
|
|
|
|
|
|
|
PrintConvInv => 'lc($val) eq "bulb" ? 0 : Image::ExifTool::Exif::ConvertFraction($val)', |
2687
|
|
|
|
|
|
|
}, |
2688
|
|
|
|
|
|
|
0x49ba => { |
2689
|
|
|
|
|
|
|
Name => 'ISO', |
2690
|
|
|
|
|
|
|
ValueConv => '2 ** (($val-48)/8) * 100', |
2691
|
|
|
|
|
|
|
ValueConvInv => '48 + 8*log($val/100)/log(2)', |
2692
|
|
|
|
|
|
|
PrintConv => 'int($val + 0.5)', |
2693
|
|
|
|
|
|
|
PrintConvInv => '$val', |
2694
|
|
|
|
|
|
|
}, |
2695
|
|
|
|
|
|
|
0x49bb => { # (https://exiftool.org/forum/index.php/topic,3688.0.html) |
2696
|
|
|
|
|
|
|
# if this value is the 35mm equivalent magnification, then the formula could |
2697
|
|
|
|
|
|
|
# be (1.5 * 2**($val/16-5)+1) * FocalLength, but this tends to underestimate |
2698
|
|
|
|
|
|
|
# distance by about 18% (ref 20) (255=inf) |
2699
|
|
|
|
|
|
|
Name => 'FocusDistance', |
2700
|
|
|
|
|
|
|
ValueConv => '2**(($val-126)/16)', |
2701
|
|
|
|
|
|
|
ValueConvInv => 'log($val)/log(2)*16+126', |
2702
|
|
|
|
|
|
|
PrintConv => '$val > 266 ? "inf" : sprintf("%.2f m", $val)', |
2703
|
|
|
|
|
|
|
PrintConvInv => '$val=~s/ ?m//; $val=~/inf/i ? 267 : $val', |
2704
|
|
|
|
|
|
|
}, |
2705
|
|
|
|
|
|
|
0x49bd => { |
2706
|
|
|
|
|
|
|
Name => 'LensType', |
2707
|
|
|
|
|
|
|
Format => 'int16uRev', |
2708
|
|
|
|
|
|
|
SeparateTable => 1, |
2709
|
|
|
|
|
|
|
ValueConvInv => 'int($val)', # (must truncate decimal part) |
2710
|
|
|
|
|
|
|
PrintConv => \%minoltaLensTypes, |
2711
|
|
|
|
|
|
|
}, |
2712
|
|
|
|
|
|
|
0x49c0 => { |
2713
|
|
|
|
|
|
|
Name => 'ExposureCompensation', # (in exposure bracketing, this is the actual value used) |
2714
|
|
|
|
|
|
|
Format => 'int8s', |
2715
|
|
|
|
|
|
|
ValueConv => '$val / 8', |
2716
|
|
|
|
|
|
|
ValueConvInv => '$val * 8', |
2717
|
|
|
|
|
|
|
PrintConv => '$val ? sprintf("%+.1f",$val) : 0', |
2718
|
|
|
|
|
|
|
PrintConvInv => 'Image::ExifTool::Exif::ConvertFraction($val)', |
2719
|
|
|
|
|
|
|
}, |
2720
|
|
|
|
|
|
|
0x49c1 => { |
2721
|
|
|
|
|
|
|
Name => 'FlashExposureComp', |
2722
|
|
|
|
|
|
|
Description => 'Flash Exposure Compensation', |
2723
|
|
|
|
|
|
|
Format => 'int8s', |
2724
|
|
|
|
|
|
|
ValueConv => '$val / 8', |
2725
|
|
|
|
|
|
|
ValueConvInv => '$val * 8', |
2726
|
|
|
|
|
|
|
PrintConv => '$val ? sprintf("%+.1f",$val) : 0', |
2727
|
|
|
|
|
|
|
PrintConvInv => 'Image::ExifTool::Exif::ConvertFraction($val)', |
2728
|
|
|
|
|
|
|
}, |
2729
|
|
|
|
|
|
|
0x49c2 => { |
2730
|
|
|
|
|
|
|
Name => 'ImageStabilization', |
2731
|
|
|
|
|
|
|
PrintConv => \%offOn, |
2732
|
|
|
|
|
|
|
}, |
2733
|
|
|
|
|
|
|
0x49c3 => { |
2734
|
|
|
|
|
|
|
Name => 'BrightnessValue', |
2735
|
|
|
|
|
|
|
ValueConv => '($val-106)/8', |
2736
|
|
|
|
|
|
|
ValueConvInv => '$val * 8 + 106', |
2737
|
|
|
|
|
|
|
}, |
2738
|
|
|
|
|
|
|
0x49c5 => { |
2739
|
|
|
|
|
|
|
Name => 'MaxAperture', |
2740
|
|
|
|
|
|
|
ValueConv => '2 ** (($val-8)/16)', |
2741
|
|
|
|
|
|
|
ValueConvInv => '8 + 16*log($val)/log(2)', |
2742
|
|
|
|
|
|
|
PrintConv => 'sprintf("%.1f",$val)', |
2743
|
|
|
|
|
|
|
PrintConvInv => '$val', |
2744
|
|
|
|
|
|
|
}, |
2745
|
|
|
|
|
|
|
# 0x49c6 - gives focal length using same formula as 0x49bb |
2746
|
|
|
|
|
|
|
0x49c7 => { |
2747
|
|
|
|
|
|
|
Name => 'FNumber', |
2748
|
|
|
|
|
|
|
ValueConv => '2 ** (($val-8)/16)', |
2749
|
|
|
|
|
|
|
ValueConvInv => '8 + 16*log($val)/log(2)', |
2750
|
|
|
|
|
|
|
PrintConv => 'sprintf("%.1f",$val)', |
2751
|
|
|
|
|
|
|
PrintConvInv => '$val', |
2752
|
|
|
|
|
|
|
}, |
2753
|
|
|
|
|
|
|
0x49dc => { |
2754
|
|
|
|
|
|
|
Name => 'InternalSerialNumber', |
2755
|
|
|
|
|
|
|
Format => 'string[12]', |
2756
|
|
|
|
|
|
|
}, |
2757
|
|
|
|
|
|
|
); |
2758
|
|
|
|
|
|
|
|
2759
|
|
|
|
|
|
|
# tags in Konica Minolta MOV videos (ref PH) |
2760
|
|
|
|
|
|
|
# (similar information in Kodak,Minolta,Nikon,Olympus,Pentax and Sanyo videos) |
2761
|
|
|
|
|
|
|
%Image::ExifTool::Minolta::MOV1 = ( |
2762
|
|
|
|
|
|
|
PROCESS_PROC => \&Image::ExifTool::ProcessBinaryData, |
2763
|
|
|
|
|
|
|
GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' }, |
2764
|
|
|
|
|
|
|
FIRST_ENTRY => 0, |
2765
|
|
|
|
|
|
|
NOTES => q{ |
2766
|
|
|
|
|
|
|
This information is found in MOV videos from some Konica Minolta models such |
2767
|
|
|
|
|
|
|
as the DiMage Z10 and X50. |
2768
|
|
|
|
|
|
|
}, |
2769
|
|
|
|
|
|
|
0 => { |
2770
|
|
|
|
|
|
|
Name => 'Make', |
2771
|
|
|
|
|
|
|
Format => 'string[32]', |
2772
|
|
|
|
|
|
|
}, |
2773
|
|
|
|
|
|
|
0x20 => { |
2774
|
|
|
|
|
|
|
Name => 'ModelType', |
2775
|
|
|
|
|
|
|
Format => 'string[8]', |
2776
|
|
|
|
|
|
|
}, |
2777
|
|
|
|
|
|
|
# (01 00 at offset 0x28) |
2778
|
|
|
|
|
|
|
0x2e => { |
2779
|
|
|
|
|
|
|
Name => 'ExposureTime', |
2780
|
|
|
|
|
|
|
Format => 'int32u', |
2781
|
|
|
|
|
|
|
ValueConv => '$val ? 10 / $val : 0', |
2782
|
|
|
|
|
|
|
PrintConv => 'Image::ExifTool::Exif::PrintExposureTime($val)', |
2783
|
|
|
|
|
|
|
}, |
2784
|
|
|
|
|
|
|
0x32 => { |
2785
|
|
|
|
|
|
|
Name => 'FNumber', |
2786
|
|
|
|
|
|
|
Format => 'rational64u', |
2787
|
|
|
|
|
|
|
PrintConv => 'sprintf("%.1f",$val)', |
2788
|
|
|
|
|
|
|
}, |
2789
|
|
|
|
|
|
|
0x3a => { |
2790
|
|
|
|
|
|
|
Name => 'ExposureCompensation', |
2791
|
|
|
|
|
|
|
Format => 'rational64s', |
2792
|
|
|
|
|
|
|
PrintConv => 'Image::ExifTool::Exif::PrintFraction($val)', |
2793
|
|
|
|
|
|
|
}, |
2794
|
|
|
|
|
|
|
# 0x4c => 'WhiteBalance', ? |
2795
|
|
|
|
|
|
|
0x50 => { |
2796
|
|
|
|
|
|
|
Name => 'FocalLength', |
2797
|
|
|
|
|
|
|
Format => 'rational64u', |
2798
|
|
|
|
|
|
|
PrintConv => 'sprintf("%.1f mm",$val)', |
2799
|
|
|
|
|
|
|
}, |
2800
|
|
|
|
|
|
|
); |
2801
|
|
|
|
|
|
|
|
2802
|
|
|
|
|
|
|
# tags in Minolta MOV videos (ref PH) |
2803
|
|
|
|
|
|
|
# (similar information in Kodak,Minolta,Nikon,Olympus,Pentax and Sanyo videos) |
2804
|
|
|
|
|
|
|
%Image::ExifTool::Minolta::MOV2 = ( |
2805
|
|
|
|
|
|
|
PROCESS_PROC => \&Image::ExifTool::ProcessBinaryData, |
2806
|
|
|
|
|
|
|
GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' }, |
2807
|
|
|
|
|
|
|
FIRST_ENTRY => 0, |
2808
|
|
|
|
|
|
|
NOTES => q{ |
2809
|
|
|
|
|
|
|
This information is found in MOV videos from some Minolta models such as the |
2810
|
|
|
|
|
|
|
DiMAGE X and Xt. |
2811
|
|
|
|
|
|
|
}, |
2812
|
|
|
|
|
|
|
0 => { |
2813
|
|
|
|
|
|
|
Name => 'Make', |
2814
|
|
|
|
|
|
|
Format => 'string[32]', |
2815
|
|
|
|
|
|
|
}, |
2816
|
|
|
|
|
|
|
0x18 => { |
2817
|
|
|
|
|
|
|
Name => 'ModelType', |
2818
|
|
|
|
|
|
|
Format => 'string[8]', |
2819
|
|
|
|
|
|
|
}, |
2820
|
|
|
|
|
|
|
# (01 00 at offset 0x20) |
2821
|
|
|
|
|
|
|
0x26 => { |
2822
|
|
|
|
|
|
|
Name => 'ExposureTime', |
2823
|
|
|
|
|
|
|
Format => 'int32u', |
2824
|
|
|
|
|
|
|
ValueConv => '$val ? 10 / $val : 0', |
2825
|
|
|
|
|
|
|
PrintConv => 'Image::ExifTool::Exif::PrintExposureTime($val)', |
2826
|
|
|
|
|
|
|
}, |
2827
|
|
|
|
|
|
|
0x2a => { |
2828
|
|
|
|
|
|
|
Name => 'FNumber', |
2829
|
|
|
|
|
|
|
Format => 'rational64u', |
2830
|
|
|
|
|
|
|
PrintConv => 'sprintf("%.1f",$val)', |
2831
|
|
|
|
|
|
|
}, |
2832
|
|
|
|
|
|
|
0x32 => { |
2833
|
|
|
|
|
|
|
Name => 'ExposureCompensation', |
2834
|
|
|
|
|
|
|
Format => 'rational64s', |
2835
|
|
|
|
|
|
|
PrintConv => 'Image::ExifTool::Exif::PrintFraction($val)', |
2836
|
|
|
|
|
|
|
}, |
2837
|
|
|
|
|
|
|
# 0x44 => 'WhiteBalance', ? |
2838
|
|
|
|
|
|
|
0x48 => { |
2839
|
|
|
|
|
|
|
Name => 'FocalLength', |
2840
|
|
|
|
|
|
|
Format => 'rational64u', |
2841
|
|
|
|
|
|
|
PrintConv => 'sprintf("%.1f mm",$val)', |
2842
|
|
|
|
|
|
|
}, |
2843
|
|
|
|
|
|
|
); |
2844
|
|
|
|
|
|
|
|
2845
|
|
|
|
|
|
|
# more tags in Minolta MOV videos (ref PH) |
2846
|
|
|
|
|
|
|
%Image::ExifTool::Minolta::MMA = ( |
2847
|
|
|
|
|
|
|
PROCESS_PROC => \&Image::ExifTool::ProcessBinaryData, |
2848
|
|
|
|
|
|
|
GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' }, |
2849
|
|
|
|
|
|
|
NOTES => q{ |
2850
|
|
|
|
|
|
|
This information is found in MOV videos from Minolta models such as the |
2851
|
|
|
|
|
|
|
DiMAGE A2, S414 and 7Hi. |
2852
|
|
|
|
|
|
|
}, |
2853
|
|
|
|
|
|
|
0 => { |
2854
|
|
|
|
|
|
|
Name => 'Make', |
2855
|
|
|
|
|
|
|
Format => 'string[20]', |
2856
|
|
|
|
|
|
|
}, |
2857
|
|
|
|
|
|
|
20 => { |
2858
|
|
|
|
|
|
|
Name => 'SoftwareVersion', |
2859
|
|
|
|
|
|
|
Format => 'string[16]', |
2860
|
|
|
|
|
|
|
}, |
2861
|
|
|
|
|
|
|
); |
2862
|
|
|
|
|
|
|
|
2863
|
|
|
|
|
|
|
# basic Minolta white balance lookup |
2864
|
|
|
|
|
|
|
my %minoltaWhiteBalance = ( |
2865
|
|
|
|
|
|
|
0 => 'Auto', |
2866
|
|
|
|
|
|
|
1 => 'Daylight', |
2867
|
|
|
|
|
|
|
2 => 'Cloudy', |
2868
|
|
|
|
|
|
|
3 => 'Tungsten', |
2869
|
|
|
|
|
|
|
5 => 'Custom', |
2870
|
|
|
|
|
|
|
7 => 'Fluorescent', |
2871
|
|
|
|
|
|
|
8 => 'Fluorescent 2', |
2872
|
|
|
|
|
|
|
11 => 'Custom 2', |
2873
|
|
|
|
|
|
|
12 => 'Custom 3', |
2874
|
|
|
|
|
|
|
# the following come from tests with the A2 (ref 2) |
2875
|
|
|
|
|
|
|
0x0800000 => 'Auto', |
2876
|
|
|
|
|
|
|
0x1800000 => 'Daylight', |
2877
|
|
|
|
|
|
|
0x2800000 => 'Cloudy', |
2878
|
|
|
|
|
|
|
0x3800000 => 'Tungsten', |
2879
|
|
|
|
|
|
|
0x4800000 => 'Flash', |
2880
|
|
|
|
|
|
|
0x5800000 => 'Fluorescent', |
2881
|
|
|
|
|
|
|
0x6800000 => 'Shade', |
2882
|
|
|
|
|
|
|
0x7800000 => 'Custom1', |
2883
|
|
|
|
|
|
|
0x8800000 => 'Custom2', |
2884
|
|
|
|
|
|
|
0x9800000 => 'Custom3', |
2885
|
|
|
|
|
|
|
); |
2886
|
|
|
|
|
|
|
|
2887
|
|
|
|
|
|
|
#------------------------------------------------------------------------------ |
2888
|
|
|
|
|
|
|
# PrintConv for Minolta white balance |
2889
|
|
|
|
|
|
|
sub ConvertWhiteBalance($) |
2890
|
|
|
|
|
|
|
{ |
2891
|
3
|
|
|
3
|
0
|
8
|
my $val = shift; |
2892
|
3
|
|
|
|
|
10
|
my $printConv = $minoltaWhiteBalance{$val}; |
2893
|
3
|
50
|
|
|
|
10
|
unless (defined $printConv) { |
2894
|
0
|
0
|
|
|
|
0
|
if ($val & 0xffff0000) { |
2895
|
|
|
|
|
|
|
# the A2 values can be shifted by +- 3 settings, where |
2896
|
|
|
|
|
|
|
# each setting adds or subtracts 0x0010000 (ref 2) |
2897
|
0
|
|
|
|
|
0
|
my $type = ($val & 0xff000000) + 0x800000; |
2898
|
0
|
0
|
|
|
|
0
|
if ($minoltaWhiteBalance{$type}) { |
2899
|
0
|
|
|
|
|
0
|
$printConv = $minoltaWhiteBalance{$type} . |
2900
|
|
|
|
|
|
|
sprintf("%+.8g", ($val - $type) / 0x10000); |
2901
|
|
|
|
|
|
|
} else { |
2902
|
0
|
|
|
|
|
0
|
$printConv = sprintf("Unknown (0x%x)", $val); |
2903
|
|
|
|
|
|
|
} |
2904
|
|
|
|
|
|
|
} else { |
2905
|
0
|
|
|
|
|
0
|
$printConv = sprintf("Unknown ($val)"); |
2906
|
|
|
|
|
|
|
} |
2907
|
|
|
|
|
|
|
} |
2908
|
3
|
|
|
|
|
15
|
return $printConv; |
2909
|
|
|
|
|
|
|
} |
2910
|
|
|
|
|
|
|
|
2911
|
|
|
|
|
|
|
1; # end |
2912
|
|
|
|
|
|
|
|
2913
|
|
|
|
|
|
|
__END__ |