21 #include <libopenraw/cameraids.h>
23 #include "arwfile.hpp"
24 #include "ifdfilecontainer.hpp"
25 #include "rawfile_private.hpp"
27 using namespace Debug;
35 #define OR_MAKE_SONY_TYPEID(camid) \
36 OR_MAKE_FILE_TYPEID(OR_TYPEID_VENDOR_SONY, camid)
41 { 2, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_R1) },
43 { 256, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A100) },
44 { 257, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A900) },
45 { 258, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A700) },
46 { 259, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A200) },
47 { 260, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A350) },
48 { 261, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A300) },
50 { 263, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A380) },
51 { 263, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A390) },
52 { 264, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A330) },
53 { 265, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A230) },
54 { 266, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A290) },
55 { 269, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A850) },
57 { 273, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A550) },
58 { 274, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A500) },
59 { 275, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A450) },
60 { 278, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_NEX5) },
61 { 279, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_NEX3) },
62 { 280, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_SLTA33) },
63 { 281, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_SLTA55) },
64 { 282, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A560) },
65 { 283, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A580) },
66 { 284, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_NEXC3) },
67 { 285, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_SLTA35) },
68 { 286, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_SLTA65) },
69 { 287, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_SLTA77) },
70 { 288, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_NEX5N) },
71 { 289, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_NEX7) },
73 { 291, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_SLTA37) },
74 { 292, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_SLTA57) },
75 { 293, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_NEXF3) },
76 { 294, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_SLTA99) },
77 { 295, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_NEX6) },
78 { 296, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_NEX5R) },
79 { 297, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX100) },
80 { 298, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX1) },
83 { 302, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE3000) },
84 { 303, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_SLTA58) },
85 { 305, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_NEX3N) },
86 { 306, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7) },
87 { 307, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_NEX5T) },
88 { 308, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX100M2) },
89 { 309, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX10) },
90 { 310, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX1R) },
91 { 311, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7R) },
92 { 312, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE6000) },
93 { 313, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE5000) },
94 { 317, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX100M3) },
95 { 318, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7S) },
96 { 319, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCA77M2) },
97 { 339, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE5100) },
98 { 340, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7M2) },
99 { 341, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX100M4) },
100 { 342, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX10M2) },
101 { 344, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX1RM2) },
102 { 346, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCEQX1) },
103 { 347, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7RM2) },
104 { 350, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7SM2) },
105 { 353, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCA68) },
106 { 354, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCA99M2) },
107 { 355, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX10M3) },
108 { 356, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX100M5) },
109 { 357, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE6300) },
110 { 358, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE9) },
111 { 360, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE6500) },
112 { 362, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7RM3) },
113 { 363, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7M3) },
114 { 364, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX0) },
115 { 365, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX10M4) },
116 { 366, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX100M6) },
117 { 367, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_HX99) },
118 { 369, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX100M5A) },
119 { 371, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE6400) },
120 { 372, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX0M2) },
121 { 373, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_HX95) },
122 { 374, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX100M7) },
123 { 375, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7RM4) },
124 { 376, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE9M2) },
125 { 378, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE6600) },
126 { 379, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE6100) },
127 { 380, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ZV1) },
128 { 381, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7C) },
129 { 382, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ZVE10) },
130 { 383, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7SM3) },
131 { 384, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE1) },
132 { 386, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7RM3A) },
133 { 387, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7RM4A) },
134 { 388, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7M4) },
135 { 390, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7RM5) },
136 { 391, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILME_FX30) },
137 { 393, OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ZVE1) },
142 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A100),
145 { 9437, -2811, -774, -8405, 16215, 2290, -710, 596, 7181 } },
146 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A200),
149 { 9847, -3091, -928, -8485, 16345, 2225, -715, 595, 7103 } },
150 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A230),
153 { 9847, -3091, -928, -8485, 16345, 2225, -715, 595, 7103 } },
154 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A290),
157 { 6038, -1484, -579, -9145, 16746, 2512, -875, 746, 7218 } },
158 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A300),
161 { 9847, -3091, -928, -8485, 16345, 2225, -715, 595, 7103 } },
162 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A330),
165 { 9847, -3091, -928, -8485, 16345, 2225, -715, 595, 7103 } },
166 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A350),
169 { 6038, -1484, -579, -9145, 16746, 2512, -875, 746, 7218 } },
170 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A380),
173 { 6038, -1484, -579, -9145, 16746, 2512, -875, 746, 7218 } },
174 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A450),
177 { 4950, -580, -103, -5228, 12542, 3029, -709, 1435, 7371 } },
178 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A500),
181 { 6046, -1127, -278, -5574, 13076, 2786, -691, 1419, 7625 } },
182 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A550),
185 { 4950, -580, -103, -5228, 12542, 3029, -709, 1435, 7371 } },
186 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A560),
189 { 4950, -580, -103, -5228, 12542, 3029, -709, 1435, 7371 } },
190 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A580),
193 { 5932, -1492, -411, -4813, 12285, 2856, -741, 1524, 6739 } },
194 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A700),
197 { 5775, -805, -359, -8574, 16295, 2391, -1943, 2341, 7249 } },
198 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A850),
201 { 5413, -1162, -365, -5665, 13098, 2866, -608, 1179, 8440 } },
202 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A900),
205 { 5209, -1072, -397, -8845, 16120, 2919, -1618, 1803, 8654 } },
206 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_SLTA33),
209 { 6069, -1221, -366, -5221, 12779, 2734, -1024, 2066, 6834 } },
210 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_SLTA35),
213 { 5986, -1618, -415, -4557, 11820, 3120, -681, 1404, 6971 } },
214 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_SLTA37),
217 { 5991, -1456, -455, -4764, 12135, 2980, -707, 1425, 6701 } },
218 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_SLTA55),
221 { 5932, -1492, -411, -4813, 12285, 2856, -741, 1524, 6739 } },
222 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_SLTA57),
225 { 5991, -1456, -455, -4764, 12135, 2980, -707, 1425, 6701 } },
226 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_SLTA58),
229 { 5991, -1456, -455, -4764, 12135, 2980, -707, 1425, 6701 } },
230 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_SLTA65),
233 { 5491, -1192, -363, -4951, 12342, 2948, -911, 1722, 7192 } },
234 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCA68),
237 { 6435, -1903, -536, -4722, 12449, 2550, -663, 1363, 6517 } },
238 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_SLTA77),
241 { 5491, -1192, -363, -4951, 12342, 2948, -911, 1722, 7192 } },
242 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCA77M2),
245 { 5991, -1732, -443, -4100, 11989, 2381, -704, 1467, 5992 } },
246 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_SLTA99),
249 { 6344, -1612, -462, -4863, 12477, 2681, -865, 1786, 6899 } },
250 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCA99M2),
253 { 6660, -1918, -471, -4613, 12398, 2485, -649, 1433, 6447 } },
254 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_NEX3),
257 { 6549, -1550, -436, -4880, 12435, 2753, -854, 1868, 6976 } },
258 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_HX95),
261 { 13076, -5686, -1481, -4027, 12851, 1251, -167, 725, 4937 } },
262 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_HX99),
265 { 13076, -5686, -1481, -4027, 12851, 1251, -167, 725, 4937 } },
266 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_NEX3N),
269 { 6129, -1545, -418, -4930, 12490, 2743, -977, 1693, 6615 } },
270 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_NEX5),
273 { 6549, -1550, -436, -4880, 12435, 2753, -854, 1868, 6976 } },
274 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_NEX5N),
277 { 5991, -1456, -455, -4764, 12135, 2980, -707, 1425, 6701 } },
278 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_NEX5R),
281 { 6129, -1545, -418, -4930, 12490, 2743, -977, 1693, 6615 } },
282 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_NEX5T),
285 { 6129, -1545, -418, -4930, 12490, 2743, -977, 1693, 6615 } },
286 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_NEXC3),
289 { 5991, -1456, -455, -4764, 12135, 2980, -707, 1425, 6701 } },
290 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_NEXF3),
293 { 5991, -1456, -455, -4764, 12135, 2980, -707, 1425, 6701 } },
294 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_NEX6),
297 { 6129, -1545, -418, -4930, 12490, 2743, -977, 1693, 6615 } },
298 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_NEX7),
301 { 5491, -1192, -363, -4951, 12342, 2948, -911, 1722, 7192 } },
302 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_R1),
305 { 8512, -2641, -694, -8041, 15670, 2526, -1820, 2117, 7414 } },
306 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX100),
309 { 8651, -2754, -1057, -3464, 12207, 1373, -568, 1398, 4434 } },
310 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX100M2),
313 { 6596, -2079, -562, -4782, 13016, 1933, -970, 1581, 5181 } },
314 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX100M3),
317 { 6596, -2079, -562, -4782, 13016, 1933, -970, 1581, 5181 } },
318 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX100M4),
321 { 6596, -2079, -562, -4782, 13016, 1933, -970, 1581, 5181 } },
322 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX100M5),
325 { 6596, -2079, -562, -4782, 13016, 1933, -970, 1581, 5181 } },
326 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX100M5A),
329 { 11176, -4700, -965, -4004, 12184, 2032, -763, 1726, 5876 } },
330 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX100M6),
333 { 7325, -2321, -596, -3494, 11674, 2055, -668, 1562, 5031 } },
334 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX100M7),
337 { 7325, -2321, -596, -3494, 11674, 2055, -668, 1562, 5031 } },
338 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX0),
341 { 9396, -3507, -843, -2497, 11111, 1572, -343, 1355, 5089 } },
342 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX0M2),
345 { 9396, -3507, -843, -2497, 11111, 1572, -343, 1355, 5089 } },
346 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX1),
349 { 6344, -1612, -462, -4863, 12477, 2681, -865, 1786, 6899 } },
350 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX1R),
353 { 6344, -1612, -462, -4863, 12477, 2681, -865, 1786, 6899 } },
354 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX1RM2),
357 { 6629, -1900, -483, -4618, 12349, 2550, -622, 1381, 6514 } },
358 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX10),
361 { 6679, -1825, -745, -5047, 13256, 1953, -1580, 2422, 5183 } },
362 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX10M2),
365 { 6679, -1825, -745, -5047, 13256, 1953, -1580, 2422, 5183 } },
366 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX10M3),
369 { 6679, -1825, -745, -5047, 13256, 1953, -1580, 2422, 5183 } },
370 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX10M4),
373 { 7699, -2566, -629, -2967, 11270, 1928, -378, 1286, 4807 } },
375 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE1),
378 { 8161, -2947, -739, -4811, 12668, 2389, -437, 1229, 6524 } },
379 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE3000),
382 { 5991, -1456, -455, -4764, 12135, 2980, -707, 1425, 6701 } },
383 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE5000),
386 { 5991, -1456, -455, -4764, 12135, 2980, -707, 1425, 6701 } },
387 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE5100),
390 { 5991, -1456, -455, -4764, 12135, 2980, -707, 1425, 6701 } },
391 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE6000),
394 { 5991, -1456, -455, -4764, 12135, 2980, -707, 1425, 6701 } },
395 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE6100),
398 { 7657, -2847, -607, -4083, 11966, 2389, -684, 1418, 5844 } },
399 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE6300),
402 { 5973, -1695, -419, -3826, 11797, 2293, -639, 1398, 5789 } },
403 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE6400),
406 { 5973, -1695, -419, -3826, 11797, 2293, -639, 1398, 5789 } },
407 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE6500),
410 { 5973, -1695, -419, -3826, 11797, 2293, -639, 1398, 5789 } },
411 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE6600),
414 { 7657, -2847, -607, -4083, 11966, 2389, -684, 1418, 5844 } },
415 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7),
418 { 5271, -712, -347, -6153, 13653, 2763, -1601, 2366, 7242 } },
419 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7M2),
422 { 5271, -712, -347, -6153, 13653, 2763, -1601, 2366, 7242 } },
423 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7M3),
426 { 7374, -2389, -551, -5435, 13162, 2519, -1006, 1795, 6552 } },
427 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7M4),
430 { 7460, -2365, -588, -5687, 13442, 2474, -624, 1156, 6584 } },
431 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7R),
434 { 4913, -541, -202, -6130, 13513, 2906, -1564, 2151, 7183 } },
435 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7RM2),
438 { 6629, -1900, -483, -4618, 12349, 2550, -622, 1381, 6514 } },
439 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7RM3),
442 { 6640, -1847, -503, -5238, 13010, 2474, -993, 1673, 6527 } },
443 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7RM3A),
446 { 6640, -1847, -503, -5238, 13010, 2474, -993, 1673, 6527 } },
447 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7RM4),
450 { 6640, -1847, -503, -5238, 13010, 2474, -993, 1673, 6527 } },
451 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7RM4A),
454 { 7662, -2686, -660, -5240, 12965, 2530, -796, 1508, 6167 } },
455 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7RM5),
458 { 8200, -2976, -719, -4296, 12053, 2532, -429, 1282, 5774 } },
459 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7S),
462 { 5838, -1430, -246, -3497, 11477, 2297, -748, 1885, 5778 } },
463 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7SM2),
466 { 5838, -1430, -246, -3497, 11477, 2297, -748, 1885, 5778 } },
467 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7SM3),
470 { 6912, -2127, -469, -4470, 12175, 2587, -398, 1478, 6492 } },
472 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7C),
475 { 7374, -2389, -551, -5435, 13162, 2519, -1006, 1795, 6552 } },
476 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE9),
479 { 6389, -1703, -378, -4562, 12265, 2587, -670, 1489, 6550 } },
480 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE9M2),
483 { 6389, -1703, -378, -4562, 12265, 2587, -670, 1489, 6550 } },
484 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCEQX1),
487 { 5991, -1456, -455, -4764, 12135, 2980, -707, 1425, 6701 } },
488 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILME_FX30),
491 { 6972, -2408, -600, -4330, 12101, 2515, -388, 1277, 5847 } },
492 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ZV1),
495 { 8280, -2987, -703, -3531, 11645, 2133, -550, 1542, 5312 } },
496 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ZVE1),
499 { 6912, -2127, -469, -4470, 12175, 2587, -398, 1478, 6492 } },
500 { OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ZVE10),
503 { 6355, -2067, -490, -3653, 11542, 2400, -406, 1258, 5506 } },
507 OR_TYPEID_HASSELBLAD_LUNAR),
510 { 5491, -1192, -363, -4951, 12342, 2948, -911, 1722, 7192 } },
512 { 0, 0, 0, { 0, 0, 0, 0, 0, 0, 0, 0, 0 } }
516 {
"DSLR-A100", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A100) },
517 {
"DSLR-A200", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A200) },
518 {
"DSLR-A230", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A230) },
519 {
"DSLR-A290", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A290) },
520 {
"DSLR-A300", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A300) },
521 {
"DSLR-A330", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A330) },
522 {
"DSLR-A350", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A350) },
523 {
"DSLR-A380", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A380) },
524 {
"DSLR-A390", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A390) },
525 {
"DSLR-A450", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A450) },
526 {
"DSLR-A500", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A500) },
527 {
"DSLR-A550", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A550) },
528 {
"DSLR-A560", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A560) },
529 {
"DSLR-A580", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A580) },
530 {
"DSLR-A700", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A700) },
531 {
"DSLR-A850", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A850) },
532 {
"DSLR-A900", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_A900) },
533 {
"SLT-A33", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_SLTA33) },
534 {
"SLT-A35", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_SLTA35) },
535 {
"SLT-A37", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_SLTA37) },
536 {
"SLT-A55V", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_SLTA55) },
537 {
"SLT-A57", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_SLTA57) },
538 {
"SLT-A58", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_SLTA58) },
539 {
"SLT-A65V", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_SLTA65) },
540 {
"SLT-A77V", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_SLTA77) },
541 {
"SLT-A99V", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_SLTA99) },
542 {
"NEX-3", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_NEX3) },
543 {
"NEX-3N", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_NEX3N) },
544 {
"NEX-5", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_NEX5) },
545 {
"NEX-5N", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_NEX5N) },
546 {
"NEX-5R", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_NEX5R) },
547 {
"NEX-5T", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_NEX5T) },
548 {
"NEX-C3", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_NEXC3) },
549 {
"NEX-F3", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_NEXF3) },
550 {
"NEX-6", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_NEX6) },
551 {
"NEX-7", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_NEX7) },
552 {
"DSC-HX95", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_HX95) },
553 {
"DSC-HX99", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_HX99) },
554 {
"DSC-R1", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_R1) },
555 {
"DSC-RX10", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX10) },
556 {
"DSC-RX10M2", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX10M2) },
557 {
"DSC-RX10M3", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX10M3) },
558 {
"DSC-RX10M4", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX10M4) },
559 {
"DSC-RX100", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX100) },
560 {
"DSC-RX100M2", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX100M2) },
561 {
"DSC-RX100M3", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX100M3) },
562 {
"DSC-RX100M4", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX100M4) },
563 {
"DSC-RX100M5", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX100M5) },
564 {
"DSC-RX100M5A", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX100M5A) },
565 {
"DSC-RX100M6", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX100M6) },
566 {
"DSC-RX100M7", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX100M7) },
567 {
"DSC-RX0", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX0) },
568 {
"DSC-RX0M2", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX0M2) },
569 {
"DSC-RX1", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX1) },
570 {
"DSC-RX1R", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX1R) },
571 {
"DSC-RX1RM2", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_RX1RM2) },
572 {
"ILCA-68", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCA68) },
573 {
"ILCA-77M2", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCA77M2) },
574 {
"ILCA-99M2", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCA99M2) },
575 {
"ILCE-1", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE1) },
576 {
"ILCE-3000", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE3000) },
577 {
"ILCE-3500", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE3500) },
578 {
"ILCE-5000", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE5000) },
579 {
"ILCE-5100", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE5100) },
580 {
"ILCE-6000", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE6000) },
581 {
"ILCE-6100", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE6100) },
582 {
"ILCE-6300", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE6300) },
583 {
"ILCE-6400", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE6400) },
584 {
"ILCE-6500", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE6500) },
585 {
"ILCE-6600", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE6600) },
586 {
"ILCE-7", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7) },
587 {
"ILCE-7C", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7C) },
588 {
"ILCE-7M2", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7M2) },
589 {
"ILCE-7M3", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7M3) },
590 {
"ILCE-7M4", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7M4) },
591 {
"ILCE-7R", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7R) },
592 {
"ILCE-7RM2", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7RM2) },
593 {
"ILCE-7RM3", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7RM3) },
594 {
"ILCE-7RM3A", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7RM3A) },
595 {
"ILCE-7RM4", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7RM4) },
596 {
"ILCE-7RM4A", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7RM4A) },
597 {
"ILCE-7RM5", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7RM5) },
598 {
"ILCE-7S", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7S) },
599 {
"ILCE-7SM2", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7SM2) },
600 {
"ILCE-7SM3", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE7SM3) },
601 {
"ILCE-9", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE9) },
602 {
"ILCE-9M2", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCE9M2) },
603 {
"ILCE-QX1", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ILCEQX1) },
604 {
"ZV-1", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ZV1) },
605 {
"ZV-E1", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ZVE1) },
606 {
"ZV-E10", OR_MAKE_SONY_TYPEID(OR_TYPEID_SONY_ZVE10) },
609 OR_TYPEID_HASSELBLAD_LUNAR) },
622 _setMatrices(s_matrices);
632 return TiffEpFile::_locateCfaIfd();
643 return TiffEpFile::_getRawData(data, options);
649 auto mn = makerNoteIfd();
653 index = IFD::MNOTE_SONY_MODEL_ID;
654 model_map = &modelid_map;
std::shared_ptr< Stream > Ptr
std::shared_ptr< IfdDir > Ref
Shared ptr of an IfdDir.
TIFF.EP conformant files.
Represent camera raw data.
#define OR_MAKE_FILE_TYPEID(vendor, camera)
Make a or_rawfile_typeid with a vendor and camera.
or_error
Error codes returned by libopenraw.
std::map< uint32_t, ::or_rawfile_typeid > ModelIdMap
Global namespace for libopenraw.