Merge branch 'exiftool1049' into dev
This commit is contained in:
commit
2c40a4aa50
@ -171,6 +171,7 @@ public:
|
||||
choices[16] = "Pan Focus";
|
||||
choices[256] = "AF + MF";
|
||||
choices[512] = "Movie Snap Focus";
|
||||
choices[519] = "Movie Servo AF";
|
||||
}
|
||||
};
|
||||
CAFocusModeInterpreter caFocusModeInterpreter;
|
||||
@ -648,6 +649,7 @@ public:
|
||||
choices.insert (p_t (52, "Canon EF-S 18-55mm f/3.5-5.6 IS II"));
|
||||
choices.insert (p_t (53, "Canon EF-S 18-55mm f/3.5-5.6 III"));
|
||||
choices.insert (p_t (54, "Canon EF-S 55-250mm f/4-5.6 IS II"));
|
||||
choices.insert (p_t (60, "Irix 11mm f/4"));
|
||||
choices.insert (p_t (94, "Canon TS-E 17mm f/4L"));
|
||||
choices.insert (p_t (95, "Canon TS-E 24.0mm f/3.5 L II"));
|
||||
choices.insert (p_t (124, "Canon MP-E 65mm f/2.8 1-5x Macro Photo"));
|
||||
@ -855,7 +857,8 @@ public:
|
||||
choices.insert (p_t (488, "Canon EF-S 15-85mm f/3.5-5.6 IS USM"));
|
||||
choices.insert (p_t (489, "Canon EF 70-300mm f/4-5.6L IS USM"));
|
||||
choices.insert (p_t (490, "Canon EF 8-15mm f/4L Fisheye USM"));
|
||||
choices.insert(p_t(491, "Canon EF 300mm f/2.8L IS II USM"));
|
||||
choices.insert (p_t (491, "Canon EF 300mm f/2.8L IS II USM or Tamron Lens"));
|
||||
choices.insert (p_t (491, "Tamron SP 70-200mm f/2.8 Di VC USD G2 (A025)"));
|
||||
choices.insert (p_t (492, "Canon EF 400mm f/2.8L IS II USM"));
|
||||
choices.insert (p_t (493, "Canon EF 500mm f/4L IS II USM or EF 24-105mm f4L IS USM"));
|
||||
choices.insert (p_t (493, "Canon EF 24-105mm f/4L IS USM"));
|
||||
@ -870,9 +873,12 @@ public:
|
||||
choices.insert (p_t (506, "Canon EF 400mm f/4 DO IS II USM"));
|
||||
choices.insert (p_t (507, "Canon EF 16-35mm f/4L IS USM"));
|
||||
choices.insert (p_t (508, "Canon EF 11-24mm f/4L USM"));
|
||||
choices.insert(p_t(747, "Canon EF 100-400mm f/4.5-5.6L IS II USM"));
|
||||
choices.insert (p_t (747, "Canon EF 100-400mm f/4.5-5.6L IS II USM or Tamron Lens"));
|
||||
choices.insert (p_t (747, "Tamron SP 150-600mm F5-6.3 Di VC USD G2"));
|
||||
choices.insert (p_t (748, "Canon EF 100-400mm f/4.5-5.6L IS II USM + 1.4x"));
|
||||
choices.insert (p_t (750, "Canon EF 35mm f/1.4L II USM"));
|
||||
choices.insert (p_t (751, "Canon EF 16-35mm f/2.8L III USM"));
|
||||
choices.insert (p_t (752, "Canon EF 24-105mm f/4L IS II USM"));
|
||||
choices.insert (p_t (4142, "Canon EF-S 18-135mm f/3.5-5.6 IS STM"));
|
||||
choices.insert (p_t (4143, "Canon EF-M 18-55mm f/3.5-5.6 IS STM or Tamron Lens"));
|
||||
choices.insert (p_t (4143, "Tamron 18-200mm f/3.5-6.3 Di III VC"));
|
||||
@ -888,6 +894,9 @@ public:
|
||||
choices.insert (p_t (4154, "Canon EF-S 24mm f/2.8 STM"));
|
||||
choices.insert (p_t (4155, "Canon EF-M 28mm f/3.5 Macro IS STM"));
|
||||
choices.insert (p_t (4156, "Canon EF 50mm f/1.8 STM"));
|
||||
choices.insert (p_t (4157, "Canon EF-M 18-150mm 1:3.5-6.3 IS STM"));
|
||||
choices.insert (p_t (4158, "Canon EF-S 18-55mm f/4-5.6 IS STM"));
|
||||
choices.insert (p_t (36910, "Canon EF 70-300mm f/4-5.6 IS II USM"));
|
||||
choices.insert (p_t (36912, "Canon EF-S 18-135mm f/3.5-5.6 IS USM"));
|
||||
choices.insert (p_t (65535, "n/a"));
|
||||
}
|
||||
@ -989,6 +998,7 @@ public:
|
||||
|
||||
if ( maxApertureAtFocal > 0.1) {
|
||||
double lensAperture;
|
||||
|
||||
if ( maxApertureAtFocal < a1 - 0.15 || maxApertureAtFocal > a2 + 0.15) {
|
||||
continue;
|
||||
}
|
||||
@ -1182,9 +1192,12 @@ public:
|
||||
{
|
||||
choices[0] = "None";
|
||||
choices[1] = "Standard";
|
||||
choices[2] = "Set 1";
|
||||
choices[3] = "Set 2";
|
||||
choices[4] = "Set 3";
|
||||
choices[2] = "Portrait";
|
||||
choices[3] = "High Saturation";
|
||||
choices[4] = "Adobe RGB";
|
||||
choices[5] = "Low Saturation";
|
||||
choices[6] = "CM Set 1";
|
||||
choices[7] = "CM Set 2";
|
||||
choices[0x21] = "User Def. 1";
|
||||
choices[0x22] = "User Def. 2";
|
||||
choices[0x23] = "User Def. 3";
|
||||
@ -1308,7 +1321,7 @@ public:
|
||||
{
|
||||
choices[248] = "EOS High-end";
|
||||
choices[250] = "Compact";
|
||||
choices[252] = "EOS Mid-end";
|
||||
choices[252] = "EOS Mid-range";
|
||||
choices[255] = "DV Camera";
|
||||
}
|
||||
};
|
||||
@ -1437,315 +1450,319 @@ public:
|
||||
};
|
||||
CAFileNumberInterpreter caFileNumberInterpreter;
|
||||
|
||||
// CanonModelID
|
||||
class CAModelIDInterpreter : public ChoiceInterpreter
|
||||
{
|
||||
public:
|
||||
CAModelIDInterpreter ()
|
||||
{
|
||||
choices[0x1010000] = "PowerShot A30";
|
||||
choices[0x1040000] = "PowerShot S300 / Digital IXUS 300 / IXY Digital 300";
|
||||
choices[0x1060000] = "PowerShot A20";
|
||||
choices[0x1080000] = "PowerShot A10";
|
||||
choices[0x1090000] = "PowerShot S110 / Digital IXUS v / IXY Digital 200";
|
||||
choices[0x1100000] = "PowerShot G2";
|
||||
choices[0x1110000] = "PowerShot S40";
|
||||
choices[0x1120000] = "PowerShot S30";
|
||||
choices[0x1130000] = "PowerShot A40";
|
||||
choices[0x1140000] = "EOS D30";
|
||||
choices[0x1150000] = "PowerShot A100";
|
||||
choices[0x1160000] = "PowerShot S200 / Digital IXUS v2 / IXY Digital 200a";
|
||||
choices[0x1170000] = "PowerShot A200";
|
||||
choices[0x1180000] = "PowerShot S330 / Digital IXUS 330 / IXY Digital 300a";
|
||||
choices[0x1190000] = "PowerShot G3";
|
||||
choices[0x1210000] = "PowerShot S45";
|
||||
choices[0x1230000] = "PowerShot SD100 / Digital IXUS II / IXY Digital 30";
|
||||
choices[0x1240000] = "PowerShot S230 / Digital IXUS v3 / IXY Digital 320";
|
||||
choices[0x1250000] = "PowerShot A70";
|
||||
choices[0x1260000] = "PowerShot A60";
|
||||
choices[0x1270000] = "PowerShot S400 / Digital IXUS 400 / IXY Digital 400";
|
||||
choices[0x1290000] = "PowerShot G5";
|
||||
choices[0x1300000] = "PowerShot A300";
|
||||
choices[0x1310000] = "PowerShot S50";
|
||||
choices[0x1340000] = "PowerShot A80";
|
||||
choices[0x1350000] = "PowerShot SD10 / Digital IXUS i / IXY Digital L";
|
||||
choices[0x1360000] = "PowerShot S1 IS";
|
||||
choices[0x1370000] = "PowerShot Pro1";
|
||||
choices[0x1380000] = "PowerShot S70";
|
||||
choices[0x1390000] = "PowerShot S60";
|
||||
choices[0x1400000] = "PowerShot G6";
|
||||
choices[0x1410000] = "PowerShot S500 / Digital IXUS 500 / IXY Digital 500";
|
||||
choices[0x1420000] = "PowerShot A75";
|
||||
choices[0x1440000] = "PowerShot SD110 / Digital IXUS IIs / IXY Digital 30a";
|
||||
choices[0x1450000] = "PowerShot A400";
|
||||
choices[0x1470000] = "PowerShot A310";
|
||||
choices[0x1490000] = "PowerShot A85";
|
||||
choices[0x1520000] = "PowerShot S410 / Digital IXUS 430 / IXY Digital 450";
|
||||
choices[0x1530000] = "PowerShot A95";
|
||||
choices[0x1540000] = "PowerShot SD300 / Digital IXUS 40 / IXY Digital 50";
|
||||
choices[0x1550000] = "PowerShot SD200 / Digital IXUS 30 / IXY Digital 40";
|
||||
choices[0x1560000] = "PowerShot A520";
|
||||
choices[0x1570000] = "PowerShot A510";
|
||||
choices[0x1590000] = "PowerShot SD20 / Digital IXUS i5 / IXY Digital L2";
|
||||
choices[0x1640000] = "PowerShot S2 IS";
|
||||
choices[0x1650000] = "PowerShot SD430 / Digital IXUS Wireless / IXY Digital Wireless";
|
||||
choices[0x1660000] = "PowerShot SD500 / Digital IXUS 700 / IXY Digital 600";
|
||||
choices[0x1668000] = "EOS D60";
|
||||
choices[0x1700000] = "PowerShot SD30 / Digital IXUS i Zoom / IXY Digital L3";
|
||||
choices[0x1740000] = "PowerShot A430";
|
||||
choices[0x1750000] = "PowerShot A410";
|
||||
choices[0x1760000] = "PowerShot S80";
|
||||
choices[0x1780000] = "PowerShot A620";
|
||||
choices[0x1790000] = "PowerShot A610";
|
||||
choices[0x1800000] = "PowerShot SD630 / Digital IXUS 65 / IXY Digital 80";
|
||||
choices[0x1810000] = "PowerShot SD450 / Digital IXUS 55 / IXY Digital 60";
|
||||
choices[0x1820000] = "PowerShot TX1";
|
||||
choices[0x1870000] = "PowerShot SD400 / Digital IXUS 50 / IXY Digital 55";
|
||||
choices[0x1880000] = "PowerShot A420";
|
||||
choices[0x1890000] = "PowerShot SD900 / Digital IXUS 900 Ti / IXY Digital 1000";
|
||||
choices[0x1900000] = "PowerShot SD550 / Digital IXUS 750 / IXY Digital 700";
|
||||
choices[0x1920000] = "PowerShot A700";
|
||||
choices[0x1940000] = "PowerShot SD700 IS / Digital IXUS 800 IS / IXY Digital 800 IS";
|
||||
choices[0x1950000] = "PowerShot S3 IS";
|
||||
choices[0x1960000] = "PowerShot A540";
|
||||
choices[0x1970000] = "PowerShot SD600 / Digital IXUS 60 / IXY Digital 70";
|
||||
choices[0x1980000] = "PowerShot G7";
|
||||
choices[0x1990000] = "PowerShot A530";
|
||||
choices[0x2000000] = "PowerShot SD800 IS / Digital IXUS 850 IS / IXY Digital 900 IS";
|
||||
choices[0x2010000] = "PowerShot SD40 / Digital IXUS i7 / IXY Digital L4";
|
||||
choices[0x2020000] = "PowerShot A710 IS";
|
||||
choices[0x2030000] = "PowerShot A640";
|
||||
choices[0x2040000] = "PowerShot A630";
|
||||
choices[0x2090000] = "PowerShot S5 IS";
|
||||
choices[0x2100000] = "PowerShot A460";
|
||||
choices[0x2120000] = "PowerShot SD850 IS / Digital IXUS 950 IS / IXY Digital 810 IS";
|
||||
choices[0x2130000] = "PowerShot A570 IS";
|
||||
choices[0x2140000] = "PowerShot A560";
|
||||
choices[0x2150000] = "PowerShot SD750 / Digital IXUS 75 / IXY Digital 90";
|
||||
choices[0x2160000] = "PowerShot SD1000 / Digital IXUS 70 / IXY Digital 10";
|
||||
choices[0x2180000] = "PowerShot A550";
|
||||
choices[0x2190000] = "PowerShot A450";
|
||||
choices[0x2230000] = "PowerShot G9";
|
||||
choices[0x2240000] = "PowerShot A650 IS";
|
||||
choices[0x2260000] = "PowerShot A720 IS";
|
||||
choices[0x2290000] = "PowerShot SX100 IS";
|
||||
choices[0x2300000] = "PowerShot SD950 IS / Digital IXUS 960 IS / IXY Digital 2000 IS";
|
||||
choices[0x2310000] = "PowerShot SD870 IS / Digital IXUS 860 IS / IXY Digital 910 IS";
|
||||
choices[0x2320000] = "PowerShot SD890 IS / Digital IXUS 970 IS / IXY Digital 820 IS";
|
||||
choices[0x2360000] = "PowerShot SD790 IS / Digital IXUS 90 IS / IXY Digital 95 IS";
|
||||
choices[0x2370000] = "PowerShot SD770 IS / Digital IXUS 85 IS / IXY Digital 25 IS";
|
||||
choices[0x2380000] = "PowerShot A590 IS";
|
||||
choices[0x2390000] = "PowerShot A580";
|
||||
choices[0x2420000] = "PowerShot A470";
|
||||
choices[0x2430000] = "PowerShot SD1100 IS / Digital IXUS 80 IS / IXY Digital 20 IS";
|
||||
choices[0x2460000] = "PowerShot SX1 IS";
|
||||
choices[0x2470000] = "PowerShot SX10 IS";
|
||||
choices[0x2480000] = "PowerShot A1000 IS";
|
||||
choices[0x2490000] = "PowerShot G10";
|
||||
choices[0x2510000] = "PowerShot A2000 IS";
|
||||
choices[0x2520000] = "PowerShot SX110 IS";
|
||||
choices[0x2530000] = "PowerShot SD990 IS / Digital IXUS 980 IS / IXY Digital 3000 IS";
|
||||
choices[0x2540000] = "PowerShot SD880 IS / Digital IXUS 870 IS / IXY Digital 920 IS";
|
||||
choices[0x2550000] = "PowerShot E1";
|
||||
choices[0x2560000] = "PowerShot D10";
|
||||
choices[0x2570000] = "PowerShot SD960 IS / Digital IXUS 110 IS / IXY Digital 510 IS";
|
||||
choices[0x2580000] = "PowerShot A2100 IS";
|
||||
choices[0x2590000] = "PowerShot A480";
|
||||
choices[0x2600000] = "PowerShot SX200 IS";
|
||||
choices[0x2610000] = "PowerShot SD970 IS / Digital IXUS 990 IS / IXY Digital 830 IS";
|
||||
choices[0x2620000] = "PowerShot SD780 IS / Digital IXUS 100 IS / IXY Digital 210 IS";
|
||||
choices[0x2630000] = "PowerShot A1100 IS";
|
||||
choices[0x2640000] = "PowerShot SD1200 IS / Digital IXUS 95 IS / IXY Digital 110 IS";
|
||||
choices[0x2700000] = "PowerShot G11";
|
||||
choices[0x2710000] = "PowerShot SX120 IS";
|
||||
choices[0x2720000] = "PowerShot S90";
|
||||
choices[0x2750000] = "PowerShot SX20 IS";
|
||||
choices[0x2760000] = "PowerShot SD980 IS / Digital IXUS 200 IS / IXY Digital 930 IS";
|
||||
choices[0x2770000] = "PowerShot SD940 IS / Digital IXUS 120 IS / IXY Digital 220 IS";
|
||||
choices[0x2800000] = "PowerShot A495";
|
||||
choices[0x2810000] = "PowerShot A490";
|
||||
choices[0x2820000] = "PowerShot A3100 IS / A3150 IS";
|
||||
choices[0x2830000] = "PowerShot A3000 IS";
|
||||
choices[0x2840000] = "PowerShot SD1400 IS / IXUS 130 / IXY 400F";
|
||||
choices[0x2850000] = "PowerShot SD1300 IS / IXUS 105 / IXY 200F";
|
||||
choices[0x2860000] = "PowerShot SD3500 IS / IXUS 210 / IXY 10S";
|
||||
choices[0x2870000] = "PowerShot SX210 IS";
|
||||
choices[0x2880000] = "PowerShot SD4000 IS / IXUS 300 HS / IXY 30S";
|
||||
choices[0x2890000] = "PowerShot SD4500 IS / IXUS 1000 HS / IXY 50S";
|
||||
choices[0x2920000] = "PowerShot G12";
|
||||
choices[0x2930000] = "PowerShot SX30 IS";
|
||||
choices[0x2940000] = "PowerShot SX130 IS";
|
||||
choices[0x2950000] = "PowerShot S95";
|
||||
choices[0x2980000] = "PowerShot A3300 IS";
|
||||
choices[0x2990000] = "PowerShot A3200 IS";
|
||||
choices[0x3000000] = "PowerShot ELPH 500 HS / IXUS 310 HS / IXY 31S";
|
||||
choices[0x3010000] = "PowerShot Pro90 IS";
|
||||
choices[0x3010001] = "PowerShot A800";
|
||||
choices[0x3020000] = "PowerShot ELPH 100 HS / IXUS 115 HS / IXY 210F";
|
||||
choices[0x3030000] = "PowerShot SX230 HS";
|
||||
choices[0x3040000] = "PowerShot ELPH 300 HS / IXUS 220 HS / IXY 410F";
|
||||
choices[0x3050000] = "PowerShot A2200";
|
||||
choices[0x3060000] = "PowerShot A1200";
|
||||
choices[0x3070000] = "PowerShot SX220 HS";
|
||||
choices[0x3080000] = "PowerShot G1 X";
|
||||
choices[0x3090000] = "PowerShot SX150 IS";
|
||||
choices[0x3100000] = "PowerShot ELPH 510 HS / IXUS 1100 HS / IXY 51S";
|
||||
choices[0x3110000] = "PowerShot S100 (new)";
|
||||
choices[0x3120000] = "PowerShot ELPH 310 HS / IXUS 230 HS / IXY 600F";
|
||||
choices[0x3130000] = "PowerShot SX40 HS";
|
||||
choices[0x3140000] = "IXY 32S";
|
||||
choices[0x3160000] = "PowerShot A1300";
|
||||
choices[0x3170000] = "PowerShot A810";
|
||||
choices[0x3180000] = "PowerShot ELPH 320 HS / IXUS 240 HS / IXY 420F";
|
||||
choices[0x3190000] = "PowerShot ELPH 110 HS / IXUS 125 HS / IXY 220F";
|
||||
choices[0x3200000] = "PowerShot D20";
|
||||
choices[0x3210000] = "PowerShot A4000 IS";
|
||||
choices[0x3220000] = "PowerShot SX260 HS";
|
||||
choices[0x3230000] = "PowerShot SX240 HS";
|
||||
choices[0x3240000] = "PowerShot ELPH 530 HS / IXUS 510 HS / IXY 1";
|
||||
choices[0x3250000] = "PowerShot ELPH 520 HS / IXUS 500 HS / IXY 3";
|
||||
choices[0x3260000] = "PowerShot A3400 IS";
|
||||
choices[0x3270000] = "PowerShot A2400 IS";
|
||||
choices[0x3280000] = "PowerShot A2300";
|
||||
choices[0x3330000] = "PowerShot G15";
|
||||
choices[0x3340000] = "PowerShot SX50";
|
||||
choices[0x3350000] = "PowerShot SX160 IS";
|
||||
choices[0x3360000] = "PowerShot S110 (new)";
|
||||
choices[0x3370000] = "PowerShot SX500 IS";
|
||||
choices[0x3380000] = "PowerShot N";
|
||||
choices[0x3390000] = "IXUS 245 HS / IXY 430F";
|
||||
choices[0x3400000] = "PowerShot SX280 HS";
|
||||
choices[0x3410000] = "PowerShot SX270 HS";
|
||||
choices[0x3420000] = "PowerShot A3500 IS";
|
||||
choices[0x3430000] = "PowerShot A2600";
|
||||
choices[0x3450000] = "PowerShot A1400";
|
||||
choices[0x3460000] = "PowerShot ELPH 130 IS / IXUS 140 / IXY 110F";
|
||||
choices[0x3470000] = "PowerShot ELPH 115/120 IS / IXUS 132/135 / IXY 90F/100F";
|
||||
choices[0x3490000] = "PowerShot ELPH 330 HS / IXUS 255 HS / IXY 610F";
|
||||
choices[0x3510000] = "PowerShot A2500";
|
||||
choices[0x3540000] = "PowerShot G16";
|
||||
choices[0x3550000] = "PowerShot S120";
|
||||
choices[0x3560000] = "PowerShot SX170 IS";
|
||||
choices[0x3580000] = "PowerShot SX510 HS";
|
||||
choices[0x3590000] = "PowerShot S200 (new)";
|
||||
choices[0x3600000] = "IXY 620F";
|
||||
choices[0x3610000] = "PowerShot N100";
|
||||
choices[0x3640000] = "PowerShot G1 X Mark II";
|
||||
choices[0x3650000] = "PowerShot D30";
|
||||
choices[0x3660000] = "PowerShot SX700 HS";
|
||||
choices[0x3670000] = "PowerShot SX600 HS";
|
||||
choices[0x3680000] = "PowerShot ELPH 140 IS / IXUS 150 / IXY 130";
|
||||
choices[0x3690000] = "PowerShot ELPH 135 / IXUS 145 / IXY 120";
|
||||
choices[0x3700000] = "PowerShot ELPH 340 HS / IXUS 265 HS / IXY 630";
|
||||
choices[0x3710000] = "PowerShot ELPH 150 IS / IXUS 155 / IXY 140";
|
||||
choices[0x3740000] = "EOS M3";
|
||||
choices[0x3750000] = "PowerShot SX60 HS";
|
||||
choices[0x3760000] = "PowerShot SX520 HS";
|
||||
choices[0x3770000] = "PowerShot SX400 IS";
|
||||
choices[0x3780000] = "PowerShot G7 X";
|
||||
choices[0x3790000] = "PowerShot N2";
|
||||
choices[0x3800000] = "PowerShot SX530 HS";
|
||||
choices[0x3820000] = "PowerShot SX710 HS";
|
||||
choices[0x3830000] = "PowerShot SX610 HS";
|
||||
choices[0x3840000] = "EOS M10";
|
||||
choices[0x3850000] = "PowerShot G3 X";
|
||||
choices[0x3860000] = "PowerShot ELPH 165 HS / IXUS 165 / IXY 160";
|
||||
choices[0x3870000] = "PowerShot ELPH 160 / IXUS 160";
|
||||
choices[0x3880000] = "PowerShot ELPH 350 HS / IXUS 275 HS / IXY 640";
|
||||
choices[0x3890000] = "PowerShot ELPH 170 IS / IXUS 170";
|
||||
choices[0x3910000] = "PowerShot SX410 IS";
|
||||
choices[0x3930000] = "PowerShot G9 X";
|
||||
choices[0x3950000] = "PowerShot G5 X";
|
||||
choices[0x3970000] = "PowerShot G7 X Mark II";
|
||||
choices[0x3990000] = "PowerShot ELPH 360 HS / IXUS 285 HS / IXY 650";
|
||||
choices[0x4010000] = "PowerShot SX540 HS";
|
||||
choices[0x4020000] = "PowerShot SX420 IS";
|
||||
choices[0x4030000] = "PowerShot ELPH 190 IS / IXUS 180 / IXY 190";
|
||||
choices[0x4040000] = "PowerShot G1";
|
||||
choices[0x4040001] = "IXY 180";
|
||||
choices[0x4050000] = "PowerShot SX720 HS";
|
||||
choices[0x6040000] = "PowerShot S100 / Digital IXUS / IXY Digital";
|
||||
choices[0x4007d673] = "DC19/DC21/DC22";
|
||||
choices[0x4007d674] = "XH A1";
|
||||
choices[0x4007d675] = "HV10";
|
||||
choices[0x4007d676] = "MD130/MD140/MD150/MD160/ZR850";
|
||||
choices[0x4007d777] = "DC50";
|
||||
choices[0x4007d778] = "HV20";
|
||||
choices[0x4007d779] = "DC211";
|
||||
choices[0x4007d77a] = "HG10";
|
||||
choices[0x4007d77b] = "HR10";
|
||||
choices[0x4007d77d] = "MD255/ZR950";
|
||||
choices[0x4007d81c] = "HF11";
|
||||
choices[0x4007d878] = "HV30";
|
||||
choices[0x4007d87c] = "XH A1S";
|
||||
choices[0x4007d87e] = "DC301/DC310/DC311/DC320/DC330";
|
||||
choices[0x4007d87f] = "FS100";
|
||||
choices[0x4007d880] = "HF10";
|
||||
choices[0x4007d882] = "HG20/HG21";
|
||||
choices[0x4007d925] = "HF21";
|
||||
choices[0x4007d926] = "HF S11";
|
||||
choices[0x4007d978] = "HV40";
|
||||
choices[0x4007d987] = "DC410/DC411/DC420";
|
||||
choices[0x4007d988] = "FS19/FS20/FS21/FS22/FS200";
|
||||
choices[0x4007d989] = "HF20/HF200";
|
||||
choices[0x4007d98a] = "HF S10/S100";
|
||||
choices[0x4007da8e] = "HF R10/R16/R17/R18/R100/R106";
|
||||
choices[0x4007da8f] = "HF M30/M31/M36/M300/M306";
|
||||
choices[0x4007da90] = "HF S20/S21/S200";
|
||||
choices[0x4007da92] = "FS31/FS36/FS37/FS300/FS305/FS306/FS307";
|
||||
choices[0x4007dda9] = "HF G25";
|
||||
choices[0x4007dfb4] = "XC10";
|
||||
choices[0x80000001] = "EOS-1D";
|
||||
choices[0x80000167] = "EOS-1DS";
|
||||
choices[0x80000168] = "EOS 10D";
|
||||
choices[0x80000169] = "EOS-1D Mark III";
|
||||
choices[0x80000170] = "EOS Digital Rebel / 300D / Kiss Digital";
|
||||
choices[0x80000174] = "EOS-1D Mark II";
|
||||
choices[0x80000175] = "EOS 20D";
|
||||
choices[0x80000176] = "EOS Digital Rebel XSi / 450D / Kiss X2";
|
||||
choices[0x80000188] = "EOS-1Ds Mark II";
|
||||
choices[0x80000189] = "EOS Digital Rebel XT / 350D / Kiss Digital N";
|
||||
choices[0x80000190] = "EOS 40D";
|
||||
choices[0x80000213] = "EOS 5D";
|
||||
choices[0x80000215] = "EOS-1Ds Mark III";
|
||||
choices[0x80000218] = "EOS 5D Mark II";
|
||||
choices[0x80000219] = "WFT-E1";
|
||||
choices[0x80000232] = "EOS-1D Mark II N";
|
||||
choices[0x80000234] = "EOS 30D";
|
||||
choices[0x80000236] = "EOS Digital Rebel XTi / 400D / Kiss Digital X";
|
||||
choices[0x80000241] = "WFT-E2";
|
||||
choices[0x80000246] = "WFT-E3";
|
||||
choices[0x80000250] = "EOS 7D";
|
||||
choices[0x80000252] = "EOS Rebel T1i / 500D / Kiss X3";
|
||||
choices[0x80000254] = "EOS Rebel XS / 1000D / Kiss F";
|
||||
choices[0x80000261] = "EOS 50D";
|
||||
choices[0x80000269] = "EOS-1D X";
|
||||
choices[0x80000270] = "EOS Rebel T2i / 550D / Kiss X4";
|
||||
choices[0x80000271] = "WFT-E4";
|
||||
choices[0x80000273] = "WFT-E5";
|
||||
choices[0x80000281] = "EOS-1D Mark IV";
|
||||
choices[0x80000285] = "EOS 5D Mark III";
|
||||
choices[0x80000286] = "EOS Rebel T3i / 600D / Kiss X5";
|
||||
choices[0x80000287] = "EOS 60D";
|
||||
choices[0x80000288] = "EOS Rebel T3 / 1100D / Kiss X50";
|
||||
choices[0x80000289] = "EOS 7D Mark II";
|
||||
choices[0x80000297] = "WFT-E2 II";
|
||||
choices[0x80000298] = "WFT-E4 II";
|
||||
choices[0x80000301] = "EOS Rebel T4i / 650D / Kiss X6i";
|
||||
choices[0x80000302] = "EOS 6D";
|
||||
choices[0x80000324] = "EOS-1D C";
|
||||
choices[0x80000325] = "EOS 70D";
|
||||
choices[0x80000326] = "EOS Rebel T5i / 700D / Kiss X7i";
|
||||
choices[0x80000327] = "EOS Rebel T5 / 1200D / Kiss X70";
|
||||
choices[0x80000328] = "EOS-1D X MARK II";
|
||||
choices[0x80000331] = "EOS M";
|
||||
choices[0x80000346] = "EOS Rebel SL1 / 100D / Kiss X7";
|
||||
choices[0x80000347] = "EOS Rebel T6s / 760D / 8000D";
|
||||
choices[0x80000350] = "EOS 80D";
|
||||
choices[0x80000355] = "EOS M2";
|
||||
choices[0x80000382] = "EOS 5DS";
|
||||
choices[0x80000393] = "EOS Rebel T6i / 750D / Kiss X8i";
|
||||
choices[0x80000401] = "EOS 5DS R";
|
||||
choices[0x80000404] = "EOS Rebel T6 / 1300D / Kiss X80";
|
||||
choices[16842752] = "PowerShot A30";
|
||||
choices[17039360] = "PowerShot S300 / Digital IXUS 300 / IXY Digital 300";
|
||||
choices[17170432] = "PowerShot A20";
|
||||
choices[17301504] = "PowerShot A10";
|
||||
choices[17367040] = "PowerShot S110 / Digital IXUS v / IXY Digital 200";
|
||||
choices[17825792] = "PowerShot G2";
|
||||
choices[17891328] = "PowerShot S40";
|
||||
choices[17956864] = "PowerShot S30";
|
||||
choices[18022400] = "PowerShot A40";
|
||||
choices[18087936] = "EOS D30";
|
||||
choices[18153472] = "PowerShot A100";
|
||||
choices[18219008] = "PowerShot S200 / Digital IXUS v2 / IXY Digital 200a";
|
||||
choices[18284544] = "PowerShot A200";
|
||||
choices[18350080] = "PowerShot S330 / Digital IXUS 330 / IXY Digital 300a";
|
||||
choices[18415616] = "PowerShot G3";
|
||||
choices[18939904] = "PowerShot S45";
|
||||
choices[19070976] = "PowerShot SD100 / Digital IXUS II / IXY Digital 30";
|
||||
choices[19136512] = "PowerShot S230 / Digital IXUS v3 / IXY Digital 320";
|
||||
choices[19202048] = "PowerShot A70";
|
||||
choices[19267584] = "PowerShot A60";
|
||||
choices[19333120] = "PowerShot S400 / Digital IXUS 400 / IXY Digital 400";
|
||||
choices[19464192] = "PowerShot G5";
|
||||
choices[19922944] = "PowerShot A300";
|
||||
choices[19988480] = "PowerShot S50";
|
||||
choices[20185088] = "PowerShot A80";
|
||||
choices[20250624] = "PowerShot SD10 / Digital IXUS i / IXY Digital L";
|
||||
choices[20316160] = "PowerShot S1 IS";
|
||||
choices[20381696] = "PowerShot Pro1";
|
||||
choices[20447232] = "PowerShot S70";
|
||||
choices[20512768] = "PowerShot S60";
|
||||
choices[20971520] = "PowerShot G6";
|
||||
choices[21037056] = "PowerShot S500 / Digital IXUS 500 / IXY Digital 500";
|
||||
choices[21102592] = "PowerShot A75";
|
||||
choices[21233664] = "PowerShot SD110 / Digital IXUS IIs / IXY Digital 30a";
|
||||
choices[21299200] = "PowerShot A400";
|
||||
choices[21430272] = "PowerShot A310";
|
||||
choices[21561344] = "PowerShot A85";
|
||||
choices[22151168] = "PowerShot S410 / Digital IXUS 430 / IXY Digital 450";
|
||||
choices[22216704] = "PowerShot A95";
|
||||
choices[22282240] = "PowerShot SD300 / Digital IXUS 40 / IXY Digital 50";
|
||||
choices[22347776] = "PowerShot SD200 / Digital IXUS 30 / IXY Digital 40";
|
||||
choices[22413312] = "PowerShot A520";
|
||||
choices[22478848] = "PowerShot A510";
|
||||
choices[22609920] = "PowerShot SD20 / Digital IXUS i5 / IXY Digital L2";
|
||||
choices[23330816] = "PowerShot S2 IS";
|
||||
choices[23396352] = "PowerShot SD430 / Digital IXUS Wireless / IXY Digital Wireless";
|
||||
choices[23461888] = "PowerShot SD500 / Digital IXUS 700 / IXY Digital 600";
|
||||
choices[23494656] = "EOS D60";
|
||||
choices[24117248] = "PowerShot SD30 / Digital IXUS i Zoom / IXY Digital L3";
|
||||
choices[24379392] = "PowerShot A430";
|
||||
choices[24444928] = "PowerShot A410";
|
||||
choices[24510464] = "PowerShot S80";
|
||||
choices[24641536] = "PowerShot A620";
|
||||
choices[24707072] = "PowerShot A610";
|
||||
choices[25165824] = "PowerShot SD630 / Digital IXUS 65 / IXY Digital 80";
|
||||
choices[25231360] = "PowerShot SD450 / Digital IXUS 55 / IXY Digital 60";
|
||||
choices[25296896] = "PowerShot TX1";
|
||||
choices[25624576] = "PowerShot SD400 / Digital IXUS 50 / IXY Digital 55";
|
||||
choices[25690112] = "PowerShot A420";
|
||||
choices[25755648] = "PowerShot SD900 / Digital IXUS 900 Ti / IXY Digital 1000";
|
||||
choices[26214400] = "PowerShot SD550 / Digital IXUS 750 / IXY Digital 700";
|
||||
choices[26345472] = "PowerShot A700";
|
||||
choices[26476544] = "PowerShot SD700 IS / Digital IXUS 800 IS / IXY Digital 800 IS";
|
||||
choices[26542080] = "PowerShot S3 IS";
|
||||
choices[26607616] = "PowerShot A540";
|
||||
choices[26673152] = "PowerShot SD600 / Digital IXUS 60 / IXY Digital 70";
|
||||
choices[26738688] = "PowerShot G7";
|
||||
choices[26804224] = "PowerShot A530";
|
||||
choices[33554432] = "PowerShot SD800 IS / Digital IXUS 850 IS / IXY Digital 900 IS";
|
||||
choices[33619968] = "PowerShot SD40 / Digital IXUS i7 / IXY Digital L4";
|
||||
choices[33685504] = "PowerShot A710 IS";
|
||||
choices[33751040] = "PowerShot A640";
|
||||
choices[33816576] = "PowerShot A630";
|
||||
choices[34144256] = "PowerShot S5 IS";
|
||||
choices[34603008] = "PowerShot A460";
|
||||
choices[34734080] = "PowerShot SD850 IS / Digital IXUS 950 IS / IXY Digital 810 IS";
|
||||
choices[34799616] = "PowerShot A570 IS";
|
||||
choices[34865152] = "PowerShot A560";
|
||||
choices[34930688] = "PowerShot SD750 / Digital IXUS 75 / IXY Digital 90";
|
||||
choices[34996224] = "PowerShot SD1000 / Digital IXUS 70 / IXY Digital 10";
|
||||
choices[35127296] = "PowerShot A550";
|
||||
choices[35192832] = "PowerShot A450";
|
||||
choices[35848192] = "PowerShot G9";
|
||||
choices[35913728] = "PowerShot A650 IS";
|
||||
choices[36044800] = "PowerShot A720 IS";
|
||||
choices[36241408] = "PowerShot SX100 IS";
|
||||
choices[36700160] = "PowerShot SD950 IS / Digital IXUS 960 IS / IXY Digital 2000 IS";
|
||||
choices[36765696] = "PowerShot SD870 IS / Digital IXUS 860 IS / IXY Digital 910 IS";
|
||||
choices[36831232] = "PowerShot SD890 IS / Digital IXUS 970 IS / IXY Digital 820 IS";
|
||||
choices[37093376] = "PowerShot SD790 IS / Digital IXUS 90 IS / IXY Digital 95 IS";
|
||||
choices[37158912] = "PowerShot SD770 IS / Digital IXUS 85 IS / IXY Digital 25 IS";
|
||||
choices[37224448] = "PowerShot A590 IS";
|
||||
choices[37289984] = "PowerShot A580";
|
||||
choices[37879808] = "PowerShot A470";
|
||||
choices[37945344] = "PowerShot SD1100 IS / Digital IXUS 80 IS / IXY Digital 20 IS";
|
||||
choices[38141952] = "PowerShot SX1 IS";
|
||||
choices[38207488] = "PowerShot SX10 IS";
|
||||
choices[38273024] = "PowerShot A1000 IS";
|
||||
choices[38338560] = "PowerShot G10";
|
||||
choices[38862848] = "PowerShot A2000 IS";
|
||||
choices[38928384] = "PowerShot SX110 IS";
|
||||
choices[38993920] = "PowerShot SD990 IS / Digital IXUS 980 IS / IXY Digital 3000 IS";
|
||||
choices[39059456] = "PowerShot SD880 IS / Digital IXUS 870 IS / IXY Digital 920 IS";
|
||||
choices[39124992] = "PowerShot E1";
|
||||
choices[39190528] = "PowerShot D10";
|
||||
choices[39256064] = "PowerShot SD960 IS / Digital IXUS 110 IS / IXY Digital 510 IS";
|
||||
choices[39321600] = "PowerShot A2100 IS";
|
||||
choices[39387136] = "PowerShot A480";
|
||||
choices[39845888] = "PowerShot SX200 IS";
|
||||
choices[39911424] = "PowerShot SD970 IS / Digital IXUS 990 IS / IXY Digital 830 IS";
|
||||
choices[39976960] = "PowerShot SD780 IS / Digital IXUS 100 IS / IXY Digital 210 IS";
|
||||
choices[40042496] = "PowerShot A1100 IS";
|
||||
choices[40108032] = "PowerShot SD1200 IS / Digital IXUS 95 IS / IXY Digital 110 IS";
|
||||
choices[40894464] = "PowerShot G11";
|
||||
choices[40960000] = "PowerShot SX120 IS";
|
||||
choices[41025536] = "PowerShot S90";
|
||||
choices[41222144] = "PowerShot SX20 IS";
|
||||
choices[41287680] = "PowerShot SD980 IS / Digital IXUS 200 IS / IXY Digital 930 IS";
|
||||
choices[41353216] = "PowerShot SD940 IS / Digital IXUS 120 IS / IXY Digital 220 IS";
|
||||
choices[41943040] = "PowerShot A495";
|
||||
choices[42008576] = "PowerShot A490";
|
||||
choices[42074112] = "PowerShot A3100 IS / A3150 IS";
|
||||
choices[42139648] = "PowerShot A3000 IS";
|
||||
choices[42205184] = "PowerShot SD1400 IS / IXUS 130 / IXY 400F";
|
||||
choices[42270720] = "PowerShot SD1300 IS / IXUS 105 / IXY 200F";
|
||||
choices[42336256] = "PowerShot SD3500 IS / IXUS 210 / IXY 10S";
|
||||
choices[42401792] = "PowerShot SX210 IS";
|
||||
choices[42467328] = "PowerShot SD4000 IS / IXUS 300 HS / IXY 30S";
|
||||
choices[42532864] = "PowerShot SD4500 IS / IXUS 1000 HS / IXY 50S";
|
||||
choices[43122688] = "PowerShot G12";
|
||||
choices[43188224] = "PowerShot SX30 IS";
|
||||
choices[43253760] = "PowerShot SX130 IS";
|
||||
choices[43319296] = "PowerShot S95";
|
||||
choices[43515904] = "PowerShot A3300 IS";
|
||||
choices[43581440] = "PowerShot A3200 IS";
|
||||
choices[50331648] = "PowerShot ELPH 500 HS / IXUS 310 HS / IXY 31S";
|
||||
choices[50397184] = "PowerShot Pro90 IS";
|
||||
choices[50397185] = "PowerShot A800";
|
||||
choices[50462720] = "PowerShot ELPH 100 HS / IXUS 115 HS / IXY 210F";
|
||||
choices[50528256] = "PowerShot SX230 HS";
|
||||
choices[50593792] = "PowerShot ELPH 300 HS / IXUS 220 HS / IXY 410F";
|
||||
choices[50659328] = "PowerShot A2200";
|
||||
choices[50724864] = "PowerShot A1200";
|
||||
choices[50790400] = "PowerShot SX220 HS";
|
||||
choices[50855936] = "PowerShot G1 X";
|
||||
choices[50921472] = "PowerShot SX150 IS";
|
||||
choices[51380224] = "PowerShot ELPH 510 HS / IXUS 1100 HS / IXY 51S";
|
||||
choices[51445760] = "PowerShot S100 (new)";
|
||||
choices[51511296] = "PowerShot ELPH 310 HS / IXUS 230 HS / IXY 600F";
|
||||
choices[51576832] = "PowerShot SX40 HS";
|
||||
choices[51642368] = "IXY 32S";
|
||||
choices[51773440] = "PowerShot A1300";
|
||||
choices[51838976] = "PowerShot A810";
|
||||
choices[51904512] = "PowerShot ELPH 320 HS / IXUS 240 HS / IXY 420F";
|
||||
choices[51970048] = "PowerShot ELPH 110 HS / IXUS 125 HS / IXY 220F";
|
||||
choices[52428800] = "PowerShot D20";
|
||||
choices[52494336] = "PowerShot A4000 IS";
|
||||
choices[52559872] = "PowerShot SX260 HS";
|
||||
choices[52625408] = "PowerShot SX240 HS";
|
||||
choices[52690944] = "PowerShot ELPH 530 HS / IXUS 510 HS / IXY 1";
|
||||
choices[52756480] = "PowerShot ELPH 520 HS / IXUS 500 HS / IXY 3";
|
||||
choices[52822016] = "PowerShot A3400 IS";
|
||||
choices[52887552] = "PowerShot A2400 IS";
|
||||
choices[52953088] = "PowerShot A2300";
|
||||
choices[53673984] = "PowerShot G15";
|
||||
choices[53739520] = "PowerShot SX50";
|
||||
choices[53805056] = "PowerShot SX160 IS";
|
||||
choices[53870592] = "PowerShot S110 (new)";
|
||||
choices[53936128] = "PowerShot SX500 IS";
|
||||
choices[54001664] = "PowerShot N";
|
||||
choices[54067200] = "IXUS 245 HS / IXY 430F";
|
||||
choices[54525952] = "PowerShot SX280 HS";
|
||||
choices[54591488] = "PowerShot SX270 HS";
|
||||
choices[54657024] = "PowerShot A3500 IS";
|
||||
choices[54722560] = "PowerShot A2600";
|
||||
choices[54853632] = "PowerShot A1400";
|
||||
choices[54919168] = "PowerShot ELPH 130 IS / IXUS 140 / IXY 110F";
|
||||
choices[54984704] = "PowerShot ELPH 115/120 IS / IXUS 132/135 / IXY 90F/100F";
|
||||
choices[55115776] = "PowerShot ELPH 330 HS / IXUS 255 HS / IXY 610F";
|
||||
choices[55640064] = "PowerShot A2500";
|
||||
choices[55836672] = "PowerShot G16";
|
||||
choices[55902208] = "PowerShot S120";
|
||||
choices[55967744] = "PowerShot SX170 IS";
|
||||
choices[56098816] = "PowerShot SX510 HS";
|
||||
choices[56164352] = "PowerShot S200 (new)";
|
||||
choices[56623104] = "IXY 620F";
|
||||
choices[56688640] = "PowerShot N100";
|
||||
choices[56885248] = "PowerShot G1 X Mark II";
|
||||
choices[56950784] = "PowerShot D30";
|
||||
choices[57016320] = "PowerShot SX700 HS";
|
||||
choices[57081856] = "PowerShot SX600 HS";
|
||||
choices[57147392] = "PowerShot ELPH 140 IS / IXUS 150 / IXY 130";
|
||||
choices[57212928] = "PowerShot ELPH 135 / IXUS 145 / IXY 120";
|
||||
choices[57671680] = "PowerShot ELPH 340 HS / IXUS 265 HS / IXY 630";
|
||||
choices[57737216] = "PowerShot ELPH 150 IS / IXUS 155 / IXY 140";
|
||||
choices[57933824] = "EOS M3";
|
||||
choices[57999360] = "PowerShot SX60 HS";
|
||||
choices[58064896] = "PowerShot SX520 HS";
|
||||
choices[58130432] = "PowerShot SX400 IS";
|
||||
choices[58195968] = "PowerShot G7 X";
|
||||
choices[58261504] = "PowerShot N2";
|
||||
choices[58720256] = "PowerShot SX530 HS";
|
||||
choices[58851328] = "PowerShot SX710 HS";
|
||||
choices[58916864] = "PowerShot SX610 HS";
|
||||
choices[58982400] = "EOS M10";
|
||||
choices[59047936] = "PowerShot G3 X";
|
||||
choices[59113472] = "PowerShot ELPH 165 HS / IXUS 165 / IXY 160";
|
||||
choices[59179008] = "PowerShot ELPH 160 / IXUS 160";
|
||||
choices[59244544] = "PowerShot ELPH 350 HS / IXUS 275 HS / IXY 640";
|
||||
choices[59310080] = "PowerShot ELPH 170 IS / IXUS 170";
|
||||
choices[59834368] = "PowerShot SX410 IS";
|
||||
choices[59965440] = "PowerShot G9 X";
|
||||
choices[60030976] = "EOS M5";
|
||||
choices[60096512] = "PowerShot G5 X";
|
||||
choices[60227584] = "PowerShot G7 X Mark II";
|
||||
choices[60358656] = "PowerShot ELPH 360 HS / IXUS 285 HS / IXY 650";
|
||||
choices[67174400] = "PowerShot SX540 HS";
|
||||
choices[67239936] = "PowerShot SX420 IS";
|
||||
choices[67305472] = "PowerShot ELPH 190 IS / IXUS 180 / IXY 190";
|
||||
choices[67371008] = "PowerShot G1";
|
||||
choices[67371009] = "IXY 180";
|
||||
choices[67436544] = "PowerShot SX720 HS";
|
||||
choices[67502080] = "PowerShot SX620 HS";
|
||||
choices[100925440] = "PowerShot S100 / Digital IXUS / IXY Digital";
|
||||
choices[1074255475] = "DC19/DC21/DC22";
|
||||
choices[1074255476] = "XH A1";
|
||||
choices[1074255477] = "HV10";
|
||||
choices[1074255478] = "MD130/MD140/MD150/MD160/ZR850";
|
||||
choices[1074255735] = "DC50";
|
||||
choices[1074255736] = "HV20";
|
||||
choices[1074255737] = "DC211";
|
||||
choices[1074255738] = "HG10";
|
||||
choices[1074255739] = "HR10";
|
||||
choices[1074255741] = "MD255/ZR950";
|
||||
choices[1074255900] = "HF11";
|
||||
choices[1074255992] = "HV30";
|
||||
choices[1074255996] = "XH A1S";
|
||||
choices[1074255998] = "DC301/DC310/DC311/DC320/DC330";
|
||||
choices[1074255999] = "FS100";
|
||||
choices[1074256000] = "HF10";
|
||||
choices[1074256002] = "HG20/HG21";
|
||||
choices[1074256165] = "HF21";
|
||||
choices[1074256166] = "HF S11";
|
||||
choices[1074256248] = "HV40";
|
||||
choices[1074256263] = "DC410/DC411/DC420";
|
||||
choices[1074256264] = "FS19/FS20/FS21/FS22/FS200";
|
||||
choices[1074256265] = "HF20/HF200";
|
||||
choices[1074256266] = "HF S10/S100";
|
||||
choices[1074256526] = "HF R10/R16/R17/R18/R100/R106";
|
||||
choices[1074256527] = "HF M30/M31/M36/M300/M306";
|
||||
choices[1074256528] = "HF S20/S21/S200";
|
||||
choices[1074256530] = "FS31/FS36/FS37/FS300/FS305/FS306/FS307";
|
||||
choices[1074257321] = "HF G25";
|
||||
choices[1074257844] = "XC10";
|
||||
choices[2147483649] = "EOS-1D";
|
||||
choices[2147484007] = "EOS-1DS";
|
||||
choices[2147484008] = "EOS 10D";
|
||||
choices[2147484009] = "EOS-1D Mark III";
|
||||
choices[2147484016] = "EOS Digital Rebel / 300D / Kiss Digital";
|
||||
choices[2147484020] = "EOS-1D Mark II";
|
||||
choices[2147484021] = "EOS 20D";
|
||||
choices[2147484022] = "EOS Digital Rebel XSi / 450D / Kiss X2";
|
||||
choices[2147484040] = "EOS-1Ds Mark II";
|
||||
choices[2147484041] = "EOS Digital Rebel XT / 350D / Kiss Digital N";
|
||||
choices[2147484048] = "EOS 40D";
|
||||
choices[2147484179] = "EOS 5D";
|
||||
choices[2147484181] = "EOS-1Ds Mark III";
|
||||
choices[2147484184] = "EOS 5D Mark II";
|
||||
choices[2147484185] = "WFT-E1";
|
||||
choices[2147484210] = "EOS-1D Mark II N";
|
||||
choices[2147484212] = "EOS 30D";
|
||||
choices[2147484214] = "EOS Digital Rebel XTi / 400D / Kiss Digital X";
|
||||
choices[2147484225] = "WFT-E2";
|
||||
choices[2147484230] = "WFT-E3";
|
||||
choices[2147484240] = "EOS 7D";
|
||||
choices[2147484242] = "EOS Rebel T1i / 500D / Kiss X3";
|
||||
choices[2147484244] = "EOS Rebel XS / 1000D / Kiss F";
|
||||
choices[2147484257] = "EOS 50D";
|
||||
choices[2147484265] = "EOS-1D X";
|
||||
choices[2147484272] = "EOS Rebel T2i / 550D / Kiss X4";
|
||||
choices[2147484273] = "WFT-E4";
|
||||
choices[2147484275] = "WFT-E5";
|
||||
choices[2147484289] = "EOS-1D Mark IV";
|
||||
choices[2147484293] = "EOS 5D Mark III";
|
||||
choices[2147484294] = "EOS Rebel T3i / 600D / Kiss X5";
|
||||
choices[2147484295] = "EOS 60D";
|
||||
choices[2147484296] = "EOS Rebel T3 / 1100D / Kiss X50";
|
||||
choices[2147484297] = "EOS 7D Mark II";
|
||||
choices[2147484311] = "WFT-E2 II";
|
||||
choices[2147484312] = "WFT-E4 II";
|
||||
choices[2147484417] = "EOS Rebel T4i / 650D / Kiss X6i";
|
||||
choices[2147484418] = "EOS 6D";
|
||||
choices[2147484452] = "EOS-1D C";
|
||||
choices[2147484453] = "EOS 70D";
|
||||
choices[2147484454] = "EOS Rebel T5i / 700D / Kiss X7i";
|
||||
choices[2147484455] = "EOS Rebel T5 / 1200D / Kiss X70";
|
||||
choices[2147484456] = "EOS-1D X MARK II";
|
||||
choices[2147484465] = "EOS M";
|
||||
choices[2147484486] = "EOS Rebel SL1 / 100D / Kiss X7";
|
||||
choices[2147484487] = "EOS Rebel T6s / 760D / 8000D";
|
||||
choices[2147484489] = "EOS 5D Mark IV";
|
||||
choices[2147484496] = "EOS 80D";
|
||||
choices[2147484501] = "EOS M2";
|
||||
choices[2147484546] = "EOS 5DS";
|
||||
choices[2147484563] = "EOS Rebel T6i / 750D / Kiss X8i";
|
||||
choices[2147484673] = "EOS 5DS R";
|
||||
choices[2147484676] = "EOS Rebel T6 / 1300D / Kiss X80";
|
||||
}
|
||||
};
|
||||
CAModelIDInterpreter caModelIDInterpreter;
|
||||
|
@ -85,17 +85,21 @@ public:
|
||||
FASaturationInterpreter ()
|
||||
{
|
||||
choices[0] = "Normal";
|
||||
choices[0x80] = "Medium High";
|
||||
choices[0x100] = "High";
|
||||
choices[0x180] = "Medium Low";
|
||||
choices[0x200] = "Low";
|
||||
choices[0x300] = "None (B&W)";
|
||||
choices[0x301] = "B&W Red Filter";
|
||||
choices[0x302] = "B&W Yellow Filter";
|
||||
choices[0x303] = "B&W Green Filter";
|
||||
choices[0x310] = "B&W Sepia";
|
||||
choices[0x400] = "Low 2";
|
||||
choices[0x8000] = "Film Simulation";
|
||||
choices[128] = "Medium High";
|
||||
choices[256] = "High";
|
||||
choices[384] = "Medium Low";
|
||||
choices[512] = "Low";
|
||||
choices[768] = "None (B&W)";
|
||||
choices[769] = "B&W Red Filter";
|
||||
choices[770] = "B&W Yellow Filter";
|
||||
choices[771] = "B&W Green Filter";
|
||||
choices[784] = "B&W Sepia";
|
||||
choices[1024] = "Low 2";
|
||||
choices[1280] = "Acros";
|
||||
choices[1281] = "Acros Red Filter";
|
||||
choices[1282] = "Acros Yellow Filter";
|
||||
choices[1283] = "Acros Green Filter";
|
||||
choices[32768] = "Film Simulation";
|
||||
}
|
||||
};
|
||||
FASaturationInterpreter faSaturationInterpreter;
|
||||
|
@ -251,62 +251,52 @@ public:
|
||||
af << "Center";
|
||||
} else {
|
||||
af << ", Center";
|
||||
}
|
||||
else if (aff & 2)
|
||||
} else if (aff & 2)
|
||||
if (af.str() == "") {
|
||||
af << "Top";
|
||||
} else {
|
||||
af << ", Top";
|
||||
}
|
||||
else if (aff & 4)
|
||||
} else if (aff & 4)
|
||||
if (af.str() == "") {
|
||||
af << "Bottom";
|
||||
} else {
|
||||
af << ", Bottom";
|
||||
}
|
||||
else if (aff & 8)
|
||||
} else if (aff & 8)
|
||||
if (af.str() == "") {
|
||||
af << "Left";
|
||||
} else {
|
||||
af << ", Left";
|
||||
}
|
||||
else if (aff & 16)
|
||||
} else if (aff & 16)
|
||||
if (af.str() == "") {
|
||||
af << "Right";
|
||||
} else {
|
||||
af << ", Right";
|
||||
}
|
||||
else if (aff & 32)
|
||||
} else if (aff & 32)
|
||||
if (af.str() == "") {
|
||||
af << "Upper-left";
|
||||
} else {
|
||||
af << ", Upper-left";
|
||||
}
|
||||
else if (aff & 64)
|
||||
} else if (aff & 64)
|
||||
if (af.str() == "") {
|
||||
af << "Upper-right";
|
||||
} else {
|
||||
af << ", Upper-right";
|
||||
}
|
||||
else if (aff & 128)
|
||||
} else if (aff & 128)
|
||||
if (af.str() == "") {
|
||||
af << " Lower-left";
|
||||
} else {
|
||||
af << ", Lower-left";
|
||||
}
|
||||
else if (aff & 256)
|
||||
} else if (aff & 256)
|
||||
if (af.str() == "") {
|
||||
af << "Lower-right";
|
||||
} else {
|
||||
af << ", Lower-right";
|
||||
}
|
||||
else if (aff & 512)
|
||||
} else if (aff & 512)
|
||||
if (af.str() == "") {
|
||||
af << "Far Left";
|
||||
} else {
|
||||
af << ", Far Left";
|
||||
}
|
||||
else if (aff & 1024) {
|
||||
} else if (aff & 1024) {
|
||||
if (af.str() == "") {
|
||||
af << "Far Right";
|
||||
} else {
|
||||
@ -618,6 +608,7 @@ const std::map<std::string, std::string> NALensDataInterpreter::lenses = {
|
||||
{"00 4C 7C 7C 2C 2C 00 02", "Tamron SP AF 180mm f/3.5 Di Model (B01)"},
|
||||
{"00 53 2B 50 24 24 00 06", "Tamron SP AF 17-50mm f/2.8 XR Di II LD Aspherical (IF) (A16)"},
|
||||
{"00 54 2B 50 24 24 00 06", "Tamron SP AF 17-50mm f/2.8 XR Di II LD Aspherical (IF) (A16NII)"},
|
||||
{"00 54 38 38 18 18 00 00", "Carl Zeiss Distagon T* 2/25 ZF.2"},
|
||||
{"00 54 3C 3C 18 18 00 00", "Carl Zeiss Distagon T* 2/28 ZF.2"},
|
||||
{"00 54 44 44 0C 0C 00 00", "Carl Zeiss Distagon T* 1.4/35 ZF.2"},
|
||||
{"00 54 44 44 18 18 00 00", "Carl Zeiss Distagon T* 2/35 ZF.2"},
|
||||
@ -851,6 +842,7 @@ const std::map<std::string, std::string> NALensDataInterpreter::lenses = {
|
||||
{"4A 48 24 24 24 0C 4D 02", "Samyang AE 14mm f/2.8 ED AS IF UMC"},
|
||||
{"4A 54 29 29 18 0C 4D 02", "Samyang 16mm f/2.0 ED AS UMC CS"},
|
||||
{"4A 54 62 62 0C 0C 4D 02", "AF Nikkor 85mm f/1.4D IF"},
|
||||
{"4A 60 36 36 0C 0C 4D 02", "Samyang 24mm f/1.4 ED AS UMC"},
|
||||
{"4A 60 44 44 0C 0C 4D 02", "Samyang 35mm f/1.4 AS UMC"},
|
||||
{"4A 60 62 62 0C 0C 4D 02", "Samyang AE 85mm f/1.4 AS IF UMC"},
|
||||
{"4B 3C A0 A0 30 30 4E 02", "AF-S Nikkor 500mm f/4D IF-ED"},
|
||||
@ -907,6 +899,7 @@ const std::map<std::string, std::string> NALensDataInterpreter::lenses = {
|
||||
{"74 40 37 62 2C 34 78 06", "AF-S Zoom-Nikkor 24-85mm f/3.5-4.5G IF-ED"},
|
||||
{"75 40 3C 68 2C 3C 79 06", "AF Zoom-Nikkor 28-100mm f/3.5-5.6G"},
|
||||
{"76 58 50 50 14 14 7A 02", "AF Nikkor 50mm f/1.8D"},
|
||||
{"77 44 60 98 34 3C 7B 0E", "Sigma 80-400mm f4.5-5.6 APO DG D OS"},
|
||||
{"77 44 61 98 34 3C 7B 0E", "Sigma 80-400mm f/4.5-5.6 EX OS"},
|
||||
{"77 48 5C 80 24 24 7B 0E", "AF-S VR Zoom-Nikkor 70-200mm f/2.8G IF-ED"},
|
||||
{"78 40 37 6E 2C 3C 7C 0E", "AF-S VR Zoom-Nikkor 24-120mm f/3.5-5.6G IF-ED"},
|
||||
@ -914,6 +907,7 @@ const std::map<std::string, std::string> NALensDataInterpreter::lenses = {
|
||||
{"79 40 3C 80 2C 3C 7F 06", "AF Zoom-Nikkor 28-200mm f/3.5-5.6G IF-ED"},
|
||||
{"79 48 3C 5C 24 24 1C 06", "Sigma 28-70mm f/2.8 EX DG"},
|
||||
{"79 48 5C 5C 24 24 1C 06", "Sigma Macro 70mm f/2.8 EX DG"},
|
||||
{"79 54 31 31 0C 0C 4B 06", "Sigma 20mm f/1.4 DG HSM | A"},
|
||||
{"7A 3B 53 80 30 3C 4B 06", "Sigma 55-200mm f/4-5.6 DC HSM"},
|
||||
{"7A 3C 1F 37 30 30 7E 06", "AF-S DX Zoom-Nikkor 12-24mm f/4G IF-ED"},
|
||||
{"7A 3C 1F 37 30 30 7E 06", "Tokina AT-X 124 AF PRO DX II (AF 12-24mm f/4)"},
|
||||
@ -981,6 +975,8 @@ const std::map<std::string, std::string> NALensDataInterpreter::lenses = {
|
||||
{"9E 40 2D 6A 2C 3C A0 0E", "AF-S DX VR Zoom-Nikkor 18-105mm f/3.5-5.6G ED"},
|
||||
{"9F 37 50 A0 34 40 4B 0E", "Sigma 50-500mm f/4.5-6.3 DG OS HSM"},
|
||||
{"9F 58 44 44 14 14 A1 06", "AF-S DX Nikkor 35mm f/1.8G"},
|
||||
{"A0 40 2D 53 2C 3C CA 0E", "AF-P DX Nikkor 18-55mm f/3.5-5.6G VR"},
|
||||
{"A0 40 2D 53 2C 3C CA 8E", "AF-P DX Nikkor 18-55mm f/3.5-5.6G"},
|
||||
{"A0 40 2D 74 2C 3C BB 0E", "AF-S DX Nikkor 18-140mm f/3.5-5.6G ED VR"},
|
||||
{"A0 48 2A 5C 24 30 4B 0E", "Sigma 17-70mm f/2.8-4 DC Macro OS HSM"},
|
||||
{"A0 54 50 50 0C 0C A2 06", "AF-S Nikkor 50mm f/1.4G"},
|
||||
@ -993,10 +989,13 @@ const std::map<std::string, std::string> NALensDataInterpreter::lenses = {
|
||||
{"A3 3C 5C 8E 30 3C 4B 0E", "Sigma 70-300mm f/4-5.6 DG OS"},
|
||||
{"A4 40 2D 8E 2C 40 BF 0E", "AF-S DX Nikkor 18-300mm f/3.5-6.3G ED VR"},
|
||||
{"A4 47 2D 50 24 34 4B 0E", "Sigma 18-50mm f/2.8-4.5 DC OS HSM"},
|
||||
{"A4 48 5C 80 24 24 CF 0E", "AF-S Nikkor 70-200mm f/2.8E FL ED VR"},
|
||||
{"A4 54 37 37 0C 0C A6 06", "AF-S Nikkor 24mm f/1.4G ED"},
|
||||
{"A5 40 2D 88 2C 40 4B 0E", "Sigma 18-250mm f/3.5-6.3 DC OS HSM"},
|
||||
{"A5 40 3C 8E 2C 3C A7 0E", "AF-S Nikkor 28-300mm f/3.5-5.6G ED VR"},
|
||||
{"A5 4C 44 44 14 14 C0 06", "AF-S Nikkor 35mm f/1.8G ED"},
|
||||
{"A5 54 6A 6A 0C 0C D0 06", "AF-S Nikkor 105mm f/1.4E ED"},
|
||||
{"A5 54 6A 6A 0C 0C D0 46", "AF-S Nikkor 105mm f/1.4E ED"},
|
||||
{"A6 48 37 5C 24 24 4B 06", "Sigma 24-70mm f/2.8 IF EX DG HSM"},
|
||||
{"A6 48 8E 8E 24 24 A8 0E", "AF-S VR Nikkor 300mm f/2.8G IF-ED II"},
|
||||
{"A6 48 98 98 24 24 C1 0E", "AF-S Nikkor 400mm f/2.8E FL ED VR"},
|
||||
@ -1040,9 +1039,12 @@ const std::map<std::string, std::string> NALensDataInterpreter::lenses = {
|
||||
{"E0 3C 5C 8E 30 3C 4B 06", "Sigma 70-300mm f/4-5.6 APO DG Macro HSM"},
|
||||
{"E1 58 37 37 14 14 1C 02", "Sigma 24mm f/1.8 EX DG Aspherical Macro"},
|
||||
{"E3 54 50 50 24 24 35 02", "Sigma Macro 50mm f/2.8 EX DG"},
|
||||
{"E4 54 64 64 24 24 DF 0E", "Tamron SP 90mm f/2.8 Di VC USD Macro 1:1 (F017)"},
|
||||
{"E5 54 6A 6A 24 24 35 02", "Sigma Macro 105mm f/2.8 EX DG"},
|
||||
{"E6 40 2D 80 2C 40 DF 0E", "Tamron AF 18-200mm f/3.5-6.3 Di II VC (B018)"},
|
||||
{"E6 41 3C 8E 2C 40 1C 02", "Sigma 28-300mm f/3.5-6.3 DG Macro"},
|
||||
{"E8 4C 44 44 14 14 DF 0E", "Tamron SP 35mm f/1.8 VC"},
|
||||
{"E7 4C 4C 4C 14 14 DF 0E", "Tamron SP 45mm f/1.8 Di VC USD (F013)"},
|
||||
{"E8 4C 44 44 14 14 DF 0E", "Tamron SP 35mm f/1.8 Di VC USD (F012)"},
|
||||
{"E9 48 27 3E 24 24 DF 0E", "Tamron SP 15-30mm f/2.8 Di VC USD (A012)"},
|
||||
{"E9 54 37 5C 24 24 1C 02", "Sigma 24-70mm f/2.8 EX DG Macro"},
|
||||
{"EA 40 29 8E 2C 40 DF 0E", "Tamron AF 16-300mm f/3.5-6.3 Di II VC PZD (B016)"},
|
||||
|
@ -122,6 +122,9 @@ public:
|
||||
lenses["00 24 00"] = "Olympus Zuiko Digital ED 40-150mm f/4.0-5.6";
|
||||
lenses["00 24 10"] = "Olympus M.Zuiko Digital ED 300mm f/4.0 IS Pro";
|
||||
lenses["00 25 10"] = "Olympus M.Zuiko Digital ED 8mm f/1.8 Fisheye Pro";
|
||||
lenses["00 26 10"] = "Olympus M.Zuiko Digital ED 12-100mm f/4.0 IS Pro";
|
||||
lenses["00 27 10"] = "Olympus M.Zuiko Digital ED 30mm f/3.5 Macro";
|
||||
lenses["00 28 10"] = "Olympus M.Zuiko Digital ED 25mm f/1.2 Pro";
|
||||
lenses["00 30 00"] = "Olympus Zuiko Digital ED 50-200mm f/2.8-3.5 SWD";
|
||||
lenses["00 31 00"] = "Olympus Zuiko Digital ED 12-60mm f/2.8-4.0 SWD";
|
||||
lenses["00 32 00"] = "Olympus Zuiko Digital ED 14-35mm f/2.0 SWD";
|
||||
@ -258,6 +261,7 @@ public:
|
||||
choices[1] = "Sequential shooting AF";
|
||||
choices[2] = "Continuous AF";
|
||||
choices[3] = "Multi AF";
|
||||
choices[4] = "Face detect";
|
||||
choices[10] = "MF";
|
||||
}
|
||||
};
|
||||
|
@ -716,8 +716,8 @@ public:
|
||||
choices.insert (p_t (256 * 3 + 23, "Tokina 80-200mm f/2.8 ATX-Pro"));
|
||||
choices.insert (p_t (256 * 3 + 24, "smc PENTAX-F 35-135mm f/3.5-4.5"));
|
||||
choices.insert (p_t (256 * 3 + 25, "smc PENTAX-F 35-105mm f/4-5.6 or Sigma or Tokina Lens"));
|
||||
choices.insert(p_t(256 * 3 + 25, "Sigma AF 28-300mm f/3.5-5.6 DL IF"));
|
||||
choices.insert (p_t (256 * 3 + 25, "Sigma 55-200mm f/4-5.6 DC"));
|
||||
choices.insert (p_t (256 * 3 + 25, "Sigma AF 28-300mm f/3.5-5.6 DL IF"));
|
||||
choices.insert (p_t (256 * 3 + 25, "Sigma AF 28-300mm f/3.5-6.3 DL IF"));
|
||||
choices.insert (p_t (256 * 3 + 25, "Sigma AF 28-300mm f/3.5-6.3 DG IF Macro"));
|
||||
choices.insert (p_t (256 * 3 + 25, "Tokina 80-200mm f/2.8 ATX-Pro"));
|
||||
@ -752,6 +752,7 @@ public:
|
||||
choices.insert (p_t (256 * 3 + 44, "Sigma 18-50mm f/3.5-5.6 DC"));
|
||||
choices.insert (p_t (256 * 3 + 44, "Sigma 17-35mm f/2.8-4 EX DG"));
|
||||
choices.insert (p_t (256 * 3 + 44, "Tamron 35-90mm f/4 AF"));
|
||||
choices.insert (p_t (256 * 3 + 44, "Sigma AF 18-35mm f/3.5-4.5 Aspherical"));
|
||||
choices.insert (p_t (256 * 3 + 46, "Sigma or Samsung Lens (3 46)"));
|
||||
choices.insert (p_t (256 * 3 + 46, "Sigma APO 70-200mm f/2.8 EX"));
|
||||
choices.insert (p_t (256 * 3 + 46, "Sigma EX APO 100-300mm f/4 IF"));
|
||||
@ -782,6 +783,7 @@ public:
|
||||
choices.insert (p_t (256 * 4 + 2, "smc PENTAX-FA 80-320mm f/4.5-5.6"));
|
||||
choices.insert (p_t (256 * 4 + 3, "smc PENTAX-FA 43mm f/1.9 Limited"));
|
||||
choices.insert (p_t (256 * 4 + 6, "smc PENTAX-FA 35-80mm f/4-5.6"));
|
||||
choices.insert (p_t (256 * 4 + 10, "Irix 15mm f/2.4"));
|
||||
choices.insert (p_t (256 * 4 + 12, "smc PENTAX-FA 50mm f/1.4"));
|
||||
choices.insert (p_t (256 * 4 + 15, "smc PENTAX-FA 28-105mm f/4-5.6 [IF]"));
|
||||
choices.insert (p_t (256 * 4 + 16, "Tamron AF 80-210mm f/4-5.6 (178D)"));
|
||||
@ -981,6 +983,7 @@ public:
|
||||
choices.insert (p_t (256 * 21 + 6, "06 Telephoto Zoom 15-45mm f/2.8"));
|
||||
choices.insert (p_t (256 * 21 + 7, "07 Mount Shield 11.5mm f/9"));
|
||||
choices.insert (p_t (256 * 21 + 8, "08 Wide Zoom 3.8-5.9mm f/3.7-4"));
|
||||
choices.insert (p_t (256 * 21 + 233, "Adapter Q for K-mount Lens"));
|
||||
choices.insert (p_t (256 * 22 + 3, "03 Fish-eye 3.2mm f/5.6"));
|
||||
choices.insert (p_t (256 * 22 + 4, "04 Toy Lens Wide 6.3mm f/7.1"));
|
||||
choices.insert (p_t (256 * 22 + 5, "05 Toy Lens Telephoto 18mm f/8"));
|
||||
@ -1924,6 +1927,7 @@ public:
|
||||
return "Auto";
|
||||
} else {
|
||||
const char *ps[] = {"Upper-left", "Top", "Upper-right", "Left", "Mid-left", "Center", "Mid-right", "Right", "Lower-left", "Bottom", "Lower-right"};
|
||||
|
||||
for ( int iBit = 0; iBit < 11; iBit++)
|
||||
if ( c & (1 << iBit) ) {
|
||||
return ps[iBit];
|
||||
|
@ -309,8 +309,7 @@ bool TagDirectory::CPBDump (const Glib::ustring &commFName, const Glib::ustring
|
||||
try {
|
||||
kf->set_string (tagDirName, getDumpKey (tags[i]->getID(), tagName), "$subdir");
|
||||
} catch (Glib::KeyFileError&) {}
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
try {
|
||||
kf->set_string (tagDirName, getDumpKey (tags[i]->getID(), tagName), tags[i]->valueToString());
|
||||
} catch (Glib::KeyFileError&) {}
|
||||
@ -1140,10 +1139,13 @@ bool Tag::parseMakerNote(FILE* f, int base, ByteOrder bom )
|
||||
directory = new TagDirectory*[2];
|
||||
// byte order for makernotes can be different from exif byte order. We have to get it from makernotes header
|
||||
ByteOrder MakerNoteOrder;
|
||||
if(value[10] == 'M' && value[11] == 'M')
|
||||
|
||||
if (value[10] == 'M' && value[11] == 'M') {
|
||||
MakerNoteOrder = rtexif::MOTOROLA;
|
||||
else
|
||||
} else {
|
||||
MakerNoteOrder = rtexif::INTEL;
|
||||
}
|
||||
|
||||
directory[0] = new TagDirectory (parent, f, basepos + 10, nikon3Attribs, MakerNoteOrder);
|
||||
directory[1] = nullptr;
|
||||
}
|
||||
@ -1269,6 +1271,7 @@ Tag::~Tag ()
|
||||
// if there are directories behind the tag, delete them
|
||||
if (directory) {
|
||||
int i = 0;
|
||||
|
||||
while (directory[i]) {
|
||||
delete directory[i++];
|
||||
}
|
||||
@ -2877,11 +2880,16 @@ int ExifManager::createTIFFHeader (const TagDirectory* root, const rtengine::pro
|
||||
cl = (const_cast<TagDirectory*> (root))->clone (nullptr);
|
||||
// remove some unknown top level tags which produce warnings when opening a tiff
|
||||
Tag *removeTag = cl->getTag (0x9003);
|
||||
if(removeTag)
|
||||
|
||||
if (removeTag) {
|
||||
removeTag->setKeep (false);
|
||||
}
|
||||
|
||||
removeTag = cl->getTag (0x9211);
|
||||
if(removeTag)
|
||||
|
||||
if (removeTag) {
|
||||
removeTag->setKeep (false);
|
||||
}
|
||||
} else {
|
||||
cl = new TagDirectory (nullptr, ifdAttribs, HOSTORDER);
|
||||
}
|
||||
|
@ -553,6 +553,7 @@ protected:
|
||||
|
||||
if ( maxApertureAtFocal > 0.1) {
|
||||
double lensAperture;
|
||||
|
||||
if ( maxApertureAtFocal < a1 - 0.15 || maxApertureAtFocal > a2 + 0.15) {
|
||||
continue;
|
||||
}
|
||||
|
@ -664,6 +664,7 @@ public:
|
||||
{128, "Sigma 35mm f/1.4 DG HSM"},
|
||||
{128, "Sigma 18-35mm f/1.8 DC HSM"},
|
||||
{128, "Sigma 50-500mm f/4.5-6.3 APO DG OS HSM"},
|
||||
{128, "Sigma 24-105mm f/4 DG HSM | Art 013"},
|
||||
{129, "Tamron Lens (129)"},
|
||||
{129, "Tamron 200-400mm f/5.6 LD"},
|
||||
{129, "Tamron 70-300mm f/4-5.6 LD"},
|
||||
@ -676,11 +677,15 @@ public:
|
||||
{142, "Voigtlander 70-300mm f/4.5-5.6"},
|
||||
{146, "Voigtlander Macro APO-Lanthar 125mm f/2.5 SL"},
|
||||
{194, "Tamron SP AF 17-50mm f/2.8 XR Di II LD Aspherical [IF]"},
|
||||
{202, "Tamron SP AF 70-200mm f/2.8 Di LD [IF] Macro"},
|
||||
{203, "Tamron SP 70-200mm f/2.8 Di USD"},
|
||||
{204, "Tamron SP 24-70mm f/2.8 Di USD"},
|
||||
{213, "Tamron 16-300mm f/3.5-6.3 Di II PZD"},
|
||||
{212, "Tamron 28-300mm f/3.5-6.3 Di PZD"},
|
||||
{213, "Tamron 16-300mm f/3.5-6.3 Di II PZD Macro"},
|
||||
{214, "Tamron SP 150-600mm f/5-6.3 Di USD"},
|
||||
{224, "Tamron SP 90mm f/2.8 Di Macro 1:1 USD"},
|
||||
{215, "Tamron SP 15-30mm f/2.8 Di USD"},
|
||||
{218, "Tamron SP 90mm f/2.8 Di Macro 1:1 USD (F017)"},
|
||||
{224, "Tamron SP 90mm f/2.8 Di Macro 1:1 USD (F004)"},
|
||||
{255, "Tamron Lens (255)"},
|
||||
{255, "Tamron SP AF 17-50mm f/2.8 XR Di II LD Aspherical"},
|
||||
{255, "Tamron AF 18-250mm f/3.5-6.3 XR Di II LD"},
|
||||
@ -691,7 +696,7 @@ public:
|
||||
{255, "Tamron SP AF 70-200mm f/2.8 Di LD IF Macro"},
|
||||
{255, "Tamron SP AF 28-75mm f/2.8 XR Di LD Aspherical IF"},
|
||||
{255, "Tamron AF 90-300mm f/4.5-5.6 Telemacro"},
|
||||
{1868, "Sigma MC-11 Adapter"},
|
||||
{1868, "Sigma MC-11 SA-E Mount Converter with not-supported Sigma lens"},
|
||||
{2550, "Minolta AF 50mm f/1.7"},
|
||||
{2551, "Minolta AF 35-70mm f/4 or Other Lens"},
|
||||
{2551, "Sigma UC AF 28-70mm f/3.5-4.5"},
|
||||
@ -814,6 +819,7 @@ public:
|
||||
{4587, "Tamron AF 70-210mm f/2.8 SP LD"},
|
||||
{4812, "Metabones Canon EF Speed Booster Ultra"},
|
||||
{6118, "Canon EF Adapter"},
|
||||
{6528, "Sigma 16mm f/2.8 Filtermatic Fisheye"},
|
||||
{6553, "E-Mount, T-Mount, Other Lens or no lens"},
|
||||
{6553, "Sony E 16mm f/2.8"},
|
||||
{6553, "Sony E 18-55mm f/3.5-5.6 OSS"},
|
||||
@ -827,6 +833,7 @@ public:
|
||||
{6553, "Sony E PZ 16-50mm f/3.5-5.6 OSS"},
|
||||
{6553, "Sony FE 35mm f/2.8 ZA"},
|
||||
{6553, "Sony FE 24-70mm f/4 ZA OSS"},
|
||||
{6553, "Sony FE 85mm f/1.8"},
|
||||
{6553, "Sony E 18-200mm f/3.5-6.3 OSS LE"},
|
||||
{6553, "Sony E 20mm f/2.8"},
|
||||
{6553, "Sony E 35mm f/1.8 OSS"},
|
||||
@ -837,32 +844,42 @@ public:
|
||||
{6553, "Sony FE 55mm f/1.8 ZA"},
|
||||
{6553, "Sony FE 70-200mm f/4 G OSS"},
|
||||
{6553, "Sony FE 16-35mm f/4 ZA OSS"},
|
||||
{6553, "Sony FE 50mm f/2.8 Macro"},
|
||||
{6553, "Sony FE 28-70mm f/3.5-5.6 OSS"},
|
||||
{6553, "Sony FE 35mm f/1.4 ZA"},
|
||||
{6553, "Sony FE 24-240mm f/3.5-6.3 OSS"},
|
||||
{6553, "Sony FE 28mm f/2"},
|
||||
{6553, "Sony FE PZ 28-135mm f/4 G OSS"},
|
||||
{6553, "Sony FE 100mm f/2.8 STF GM OSS"},
|
||||
{6553, "Sony FE 24-70mm f/2.8 GM"},
|
||||
{6553, "Sony FE 50mm f/1.4 ZA"},
|
||||
{6553, "Sony FE 85mm f/1.4 GM"},
|
||||
{6553, "Sony FE 50mm f/1.8"},
|
||||
{6553, "Sony FE 21mm f/2.8 (SEL28F20 + SEL075UWC)"},
|
||||
{6553, "Sony FE 16mm f/3.5 Fisheye (SEL28F20 + SEL057FEC)"},
|
||||
{6553, "Sony FE 70-300mm f/4.5-5.6 G OSS"},
|
||||
{6553, "Sony FE 70-200mm f/2.8 GM OSS"},
|
||||
{6553, "Sony FE 70-200mm f/2.8 GM OSS + 1.4X Teleconverter"},
|
||||
{6553, "Sony FE 70-200mm f/2.8 GM OSS + 2X Teleconverter"},
|
||||
{6553, "Samyang AF 50mm f/1.4 FE"},
|
||||
{6553, "Samyang AF 14mm f/2.8 FE"},
|
||||
{6553, "Sigma 19mm f/2.8 [EX] DN"},
|
||||
{6553, "Sigma 30mm f/2.8 [EX] DN"},
|
||||
{6553, "Sigma 60mm f/2.8 DN"},
|
||||
{6553, "Sigma 30mm f/1.4 DC DN | C"},
|
||||
{6553, "Sigma 30mm f/1.4 DC DN | C 016"},
|
||||
{6553, "Tamron 18-200mm f/3.5-6.3 Di III VC"},
|
||||
{6553, "Zeiss Batis 25mm f/2"},
|
||||
{6553, "Zeiss Batis 85mm f/1.8"},
|
||||
{6553, "Zeiss Batis 18mm f/2.8"},
|
||||
{6553, "Zeiss Loxia 21mm f/2.8"},
|
||||
{6553, "Zeiss Loxia 35mm f/2"},
|
||||
{6553, "Zeiss Loxia 50mm f/2"},
|
||||
{6553, "Tokina Firin 20mm f/2 FE MF"},
|
||||
{6553, "Zeiss Touit 12mm f/2.8"},
|
||||
{6553, "Zeiss Touit 32mm f/1.8"},
|
||||
{6553, "Zeiss Touit 50mm f/2.8 Macro"},
|
||||
{6553, "Zeiss Batis 25mm f/2"},
|
||||
{6553, "Zeiss Batis 85mm f/1.8"},
|
||||
{6553, "Zeiss Batis 18mm f/2.8"},
|
||||
{6553, "Zeiss Batis 135mm f/2.8"},
|
||||
{6553, "Zeiss Loxia 50mm f/2"},
|
||||
{6553, "Zeiss Loxia 35mm f/2"},
|
||||
{6553, "Zeiss Loxia 21mm f/2.8"},
|
||||
{6553, "Zeiss Loxia 85mm f/2.4"},
|
||||
{6553, "Arax MC 35mm f/2.8 Tilt+Shift"},
|
||||
{6553, "Arax MC 80mm f/2.8 Tilt+Shift"},
|
||||
{6553, "Zenitar MF 16mm f/2.8 Fisheye M42"},
|
||||
@ -870,7 +887,7 @@ public:
|
||||
{6553, "Pentacon Auto 135mm f/2.8"},
|
||||
{6553, "Pentacon Auto 29mm f/2.8"},
|
||||
{6553, "Helios 44-2 58mm f/2.0"},
|
||||
{18688, "Sigma MC-11 Adapter"},
|
||||
{18688, "Sigma MC-11 SA-E Mount Converter with not-supported Sigma lens"},
|
||||
{25501, "Minolta AF 50mm f/1.7"},
|
||||
{25511, "Minolta AF 35-70mm f/4 or Other Lens"},
|
||||
{25511, "Sigma UC AF 28-70mm f/3.5-4.5"},
|
||||
@ -993,6 +1010,7 @@ public:
|
||||
{45871, "Tamron AF 70-210mm f/2.8 SP LD"},
|
||||
{48128, "Metabones Canon EF Speed Booster Ultra"},
|
||||
{61184, "Canon EF Adapter"},
|
||||
{65280, "Sigma 16mm f/2.8 Filtermatic Fisheye"},
|
||||
{65535, "E-Mount, T-Mount, Other Lens or no lens"},
|
||||
{65535, "Sony E 16mm f/2.8"},
|
||||
{65535, "Sony E 18-55mm f/3.5-5.6 OSS"},
|
||||
@ -1006,6 +1024,7 @@ public:
|
||||
{65535, "Sony E PZ 16-50mm f/3.5-5.6 OSS"},
|
||||
{65535, "Sony FE 35mm f/2.8 ZA"},
|
||||
{65535, "Sony FE 24-70mm f/4 ZA OSS"},
|
||||
{65535, "Sony FE 85mm f/1.8"},
|
||||
{65535, "Sony E 18-200mm f/3.5-6.3 OSS LE"},
|
||||
{65535, "Sony E 20mm f/2.8"},
|
||||
{65535, "Sony E 35mm f/1.8 OSS"},
|
||||
@ -1016,40 +1035,49 @@ public:
|
||||
{65535, "Sony FE 55mm f/1.8 ZA"},
|
||||
{65535, "Sony FE 70-200mm f/4 G OSS"},
|
||||
{65535, "Sony FE 16-35mm f/4 ZA OSS"},
|
||||
{65535, "Sony FE 50mm f/2.8 Macro"},
|
||||
{65535, "Sony FE 28-70mm f/3.5-5.6 OSS"},
|
||||
{65535, "Sony FE 35mm f/1.4 ZA"},
|
||||
{65535, "Sony FE 24-240mm f/3.5-6.3 OSS"},
|
||||
{65535, "Sony FE 28mm f/2"},
|
||||
{65535, "Sony FE PZ 28-135mm f/4 G OSS"},
|
||||
{65535, "Sony FE 100mm f/2.8 STF GM OSS"},
|
||||
{65535, "Sony FE 24-70mm f/2.8 GM"},
|
||||
{65535, "Sony FE 50mm f/1.4 ZA"},
|
||||
{65535, "Sony FE 85mm f/1.4 GM"},
|
||||
{65535, "Sony FE 85mm f/1.8"},
|
||||
{65535, "Sony FE 50mm f/1.8"},
|
||||
{65535, "Sony FE 21mm f/2.8 (SEL28F20 + SEL075UWC)"},
|
||||
{65535, "Sony FE 16mm f/3.5 Fisheye (SEL28F20 + SEL057FEC)"},
|
||||
{65535, "Sony FE 70-300mm f/4.5-5.6 G OSS"},
|
||||
{65535, "Sony FE 70-200mm f/2.8 GM OSS"},
|
||||
{65535, "Sony FE 70-200mm f/2.8 GM OSS + 1.4X Teleconverter"},
|
||||
{65535, "Sony FE 70-200mm f/2.8 GM OSS + 2X Teleconverter"},
|
||||
{65535, "Samyang AF 50mm f/1.4 FE"},
|
||||
{65535, "Samyang AF 14mm f/2.8 FE"},
|
||||
{65535, "Sigma 19mm f/2.8 [EX] DN"},
|
||||
{65535, "Sigma 30mm f/2.8 [EX] DN"},
|
||||
{65535, "Sigma 60mm f/2.8 DN"},
|
||||
{65535, "Sigma 30mm f/1.4 DC DN | C"},
|
||||
{65535, "Sigma 30mm f/1.4 DC DN | C 016"},
|
||||
{65535, "Tamron 18-200mm f/3.5-6.3 Di III VC"},
|
||||
{65535, "Zeiss Batis 25mm f/2"},
|
||||
{65535, "Zeiss Batis 85mm f/1.8"},
|
||||
{65535, "Zeiss Batis 18mm f/2.8"},
|
||||
{65535, "Zeiss Loxia 21mm f/2.8"},
|
||||
{65535, "Zeiss Loxia 35mm f/2"},
|
||||
{65535, "Zeiss Loxia 50mm f/2"},
|
||||
{65535, "Tokina Firin 20mm f/2 FE MF"},
|
||||
{65535, "Zeiss Touit 12mm f/2.8"},
|
||||
{65535, "Zeiss Touit 32mm f/1.8"},
|
||||
{65535, "Zeiss Touit 50mm f/2.8 Macro"},
|
||||
{65535, "Zeiss Batis 25mm f/2"},
|
||||
{65535, "Zeiss Batis 85mm f/1.8"},
|
||||
{65535, "Zeiss Batis 18mm f/2.8"},
|
||||
{65535, "Zeiss Batis 135mm f/2.8"},
|
||||
{65535, "Zeiss Loxia 50mm f/2"},
|
||||
{65535, "Zeiss Loxia 35mm f/2"},
|
||||
{65535, "Zeiss Loxia 21mm f/2.8"},
|
||||
{65535, "Zeiss Loxia 85mm f/2.4"},
|
||||
{65535, "Arax MC 35mm f/2.8 Tilt+Shift"},
|
||||
{65535, "Arax MC 80mm f/2.8 Tilt+Shift"},
|
||||
{65535, "Zenitar MF 16mm f/2.8 Fisheye M42"},
|
||||
{65535, "Samyang 500mm Mirror f/8.0"},
|
||||
{65535, "Pentacon Auto 135mm f/2.8"},
|
||||
{65535, "Pentacon Auto 29mm f/2.8"},
|
||||
{65535, "Helios 44-2 58mm f/2.0"}
|
||||
{65535, "Helios 44-2 58mm f/2.0"},
|
||||
};
|
||||
}
|
||||
|
||||
@ -1106,8 +1134,10 @@ public:
|
||||
choices.insert (p_t (32786, "Sony E 55-210mm f/4.5-6.3 OSS"));
|
||||
choices.insert (p_t (32787, "Sony E 18-200mm f/3.5-6.3 OSS"));
|
||||
choices.insert (p_t (32788, "Sony E 30mm f/3.5 Macro"));
|
||||
choices.insert(p_t(32789, "Sony E 24mm f/1.8 ZA"));
|
||||
choices.insert(p_t(32790, "Sony E 50mm f/1.8 OSS"));
|
||||
choices.insert (p_t (32789, "Sony E 24mm f/1.8 ZA or Samyang AF 50mm f/1.4 FE"));
|
||||
choices.insert (p_t (32789, "Samyang AF 50mm f/1.4 FE"));
|
||||
choices.insert (p_t (32790, "Sony E 50mm f/1.8 OSS or Samyang AF 14mm f/2.8 FE"));
|
||||
choices.insert (p_t (32790, "Samyang AF 14mm f/2.8 FE"));
|
||||
choices.insert (p_t (32791, "Sony E 16-70mm f/4 ZA OSS"));
|
||||
choices.insert (p_t (32792, "Sony E 10-18mm f/4 OSS"));
|
||||
choices.insert (p_t (32793, "Sony E PZ 16-50mm f/3.5-5.6 OSS"));
|
||||
@ -1124,27 +1154,36 @@ public:
|
||||
choices.insert (p_t (32808, "Sony FE 55mm f/1.8 ZA"));
|
||||
choices.insert (p_t (32810, "Sony FE 70-200mm f/4 G OSS"));
|
||||
choices.insert (p_t (32811, "Sony FE 16-35mm f/4 ZA OSS"));
|
||||
choices.insert (p_t (32812, "Sony FE 50mm f/2.8 Macro"));
|
||||
choices.insert (p_t (32813, "Sony FE 28-70mm f/3.5-5.6 OSS"));
|
||||
choices.insert (p_t (32814, "Sony FE 35mm f/1.4 ZA"));
|
||||
choices.insert (p_t (32815, "Sony FE 24-240mm f/3.5-6.3 OSS"));
|
||||
choices.insert (p_t (32816, "Sony FE 28mm f/2"));
|
||||
choices.insert (p_t (32817, "Sony FE PZ 28-135mm f/4 G OSS"));
|
||||
choices.insert (p_t (32819, "Sony FE 100mm f/2.8 STF GM OSS"));
|
||||
choices.insert (p_t (32821, "Sony FE 24-70mm f/2.8 GM"));
|
||||
choices.insert (p_t (32822, "Sony FE 50mm f/1.4 ZA"));
|
||||
choices.insert (p_t (32823, "Sony FE 85mm f/1.4 GM"));
|
||||
choices.insert (p_t (32824, "Sony FE 50mm f/1.8"));
|
||||
choices.insert (p_t (32826, "Sony FE 21mm f/2.8 (SEL28F20 + SEL075UWC)"));
|
||||
choices.insert (p_t (32827, "Sony FE 16mm f/3.5 Fisheye (SEL28F20 + SEL057FEC)"));
|
||||
choices.insert (p_t (32828, "Sony FE 70-300mm f/4.5-5.6 G OSS"));
|
||||
choices.insert (p_t (32830, "Sony FE 70-200mm f/2.8 GM OSS"));
|
||||
choices.insert (p_t (33002, "Sigma 85mm f/1.4 DG HSM | A 016 (+ Metabones Ver.50)"));
|
||||
choices.insert (p_t (33072, "Sony FE 70-200mm f/2.8 GM OSS + 1.4X Teleconverter"));
|
||||
choices.insert (p_t (33073, "Sony FE 70-200mm f/2.8 GM OSS + 2X Teleconverter"));
|
||||
choices.insert (p_t (33076, "Sony FE 100mm f/2.8 STF GM OSS (macro mode)"));
|
||||
choices.insert (p_t (49201, "Zeiss Touit 12mm f/2.8"));
|
||||
choices.insert (p_t (49202, "Zeiss Touit 32mm f/1.8"));
|
||||
choices.insert (p_t (49203, "Zeiss Touit 50mm f/2.8 Macro"));
|
||||
choices.insert (p_t (49216, "Zeiss Batis 25mm f/2"));
|
||||
choices.insert (p_t (49217, "Zeiss Batis 85mm f/1.8"));
|
||||
choices.insert (p_t (49218, "Zeiss Batis 18mm f/2.8"));
|
||||
choices.insert (p_t (49219, "Zeiss Batis 135mm f/2.8"));
|
||||
choices.insert (p_t (49232, "Zeiss Loxia 50mm f/2"));
|
||||
choices.insert (p_t (49233, "Zeiss Loxia 35mm f/2"));
|
||||
choices.insert (p_t (49234, "Zeiss Loxia 21mm f/2.8"));
|
||||
choices.insert (p_t (49235, "Zeiss Loxia 85mm f/2.4"));
|
||||
choices.insert (p_t (50480, "Sigma 30mm f/1.4 DC DN | C 016"));
|
||||
choices.insert (p_t (50481, "Sigma 50mm f/1.4 DG HSM | A 014 + MC-11"));
|
||||
choices.insert (p_t (50482, "Sigma 18-300mm f/3.5-6.3 DC MACRO OS HSM | C 014 + MC-11"));
|
||||
@ -1158,6 +1197,11 @@ public:
|
||||
choices.insert (p_t (50492, "Sigma 24-105mm f/4 DG OS HSM | A 013 + MC-11"));
|
||||
choices.insert (p_t (50493, "Sigma 17-70mm f/2.8-4 DC MACRO OS HSM | C 013 + MC-11"));
|
||||
choices.insert (p_t (50495, "Sigma 50-100mm f/1.8 DC HSM | A 016 + MC-11"));
|
||||
choices.insert (p_t (50992, "Voigtlander SUPER WIDE-HELIAR 15mm f/4.5 III"));
|
||||
choices.insert (p_t (50993, "Voigtlander HELIAR-HYPER WIDE 10mm f/5.6"));
|
||||
choices.insert (p_t (50994, "Voigtlander ULTRA WIDE-HELIAR 12mm f/5.6 III"));
|
||||
choices.insert (p_t (50996, "Voigtlander NOKTON 40mm f/1.2 Aspherical"));
|
||||
choices.insert (p_t (51505, "Samyang AF 14mm f/2.8 FE"));
|
||||
}
|
||||
|
||||
virtual std::string toString (Tag* t)
|
||||
|
@ -446,9 +446,11 @@ public:
|
||||
virtual std::string toString (Tag* t)
|
||||
{
|
||||
int count = t->getCount();
|
||||
|
||||
if (count <= 8) {
|
||||
return std::string();
|
||||
}
|
||||
|
||||
count = std::min (count, 65535); // limit to 65535 chars to avoid crashes in case of corrupted metadata
|
||||
char *buffer = new char[count - 7];
|
||||
|
||||
|
@ -1,9 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# This Bash4 script generates lens ID lists for rtexif/*.cc files using
|
||||
# the exiftool version installed on the host system, so make sure you have
|
||||
# the latest version of exiftool installed before running this script.
|
||||
# It uses xmlstarlet to parse exiftool's output so make sure you have that.
|
||||
# This Bash4 script generates lens ID and other parameter lists for rtexif/*.cc
|
||||
# files using ExifTool. It uses xmlstarlet to parse ExifTool's output.
|
||||
#
|
||||
# Run the script from the project root:
|
||||
# ./tools/generateLensList
|
||||
@ -13,50 +11,51 @@
|
||||
# Blame DrSlony
|
||||
# Please report bugs or enhancements to https://github.com/Beep6581/RawTherapee
|
||||
|
||||
hash exiftool 2>/dev/null || { echo >&2 "Exiftool not found, install it first."; exit 1; }
|
||||
et="$HOME/programs/code-exiftool/exiftool"
|
||||
|
||||
hash "$et" 2>/dev/null || { echo >&2 "ExifTool not found, install it first."; exit 1; }
|
||||
hash xmlstarlet 2>/dev/null || { echo >&2 "XMLStarlet not found, install it first."; exit 1; }
|
||||
|
||||
unset cam cams
|
||||
|
||||
cams=("canon" "nikon" "olympus" "pentax" "sony")
|
||||
tmpdir="/tmp/rt-generateLensList"
|
||||
|
||||
head -n 15 "$0" | tail -n 14
|
||||
printf '%s\n' "exiftool version: $(exiftool -ver)" "" "XMLStarlet version: $(xmlstarlet --version)" | sed 's/^/# /'
|
||||
printf '%s\n' "ExifTool version: $("$et" -ver)" "" "XMLStarlet version: $(xmlstarlet --version)" | sed 's/^/# /'
|
||||
|
||||
if [[ -d ${tmpdir} ]]; then
|
||||
printf '%s\n' "" "Removing temp folder: $tmpdir"
|
||||
printf '%s\n' "" "Must remove temp folder from previous run: $tmpdir"
|
||||
rm -rvI "$tmpdir" || exit 1
|
||||
fi
|
||||
mkdir -p "$tmpdir" || { printf '%s\n' "Error creating $tmpdir" ""; exit 1; }
|
||||
echo
|
||||
|
||||
for cam in "${cams[@]}"; do
|
||||
if [[ "$cam" != nikon ]]; then
|
||||
printf '%s\n' "Saving ${tmpdir}/${cam}"
|
||||
xmlstarlet sel -T -t -m "taginfo/table/tag[@name='LensType']/values/key" -v "concat(@id,' ',val)" -n < <(exiftool -listx -"$cam":all) > "${tmpdir}/cam" || { printf '%s\n' "Saving failed: ${tmpdir}/cam"; exit 1; }
|
||||
sort -fuV "${tmpdir}/cam" > "${tmpdir}/${cam}"
|
||||
rm -f "${tmpdir}/cam"
|
||||
fi
|
||||
case $cam in
|
||||
canon) sed -r -i -e '/-1\tn\/a/d' -e 's/([0-9]+)[0-9.]*\t/\1, "/' -e 's/^/ choices.insert(p_t(/' -e 's/$/"));/' -e 's| F/([0-9]+)| f/\1|' "${tmpdir}/canon" ;;
|
||||
nikon)
|
||||
# Canon
|
||||
printf '%s\n' "Saving ${tmpdir}/canon"
|
||||
xmlstarlet sel -T -t -m "taginfo/table/tag[@name='LensType']/values/key" -v "concat(@id,' ',val)" -n < <("$et" -listx -canon:all) | sort -fuV > "${tmpdir}/canon"
|
||||
sed -r -i -e '/-1\tn\/a/d' -e 's/([0-9]+)[0-9.]*\t/\1, "/' -e 's/^/ choices.insert(p_t(/' -e 's/$/"));/' -e 's| F/([0-9]+)| f/\1|' "${tmpdir}/canon"
|
||||
# xmlstarlet sel -T -t -m "taginfo/table/tag[@name='EasyMode']/values/key" -v "concat(@id,' ',val)" -n < <(exiftool -listx -canon:all) | sed -r -e '/-1\tn\/a/d' -e 's/([0-9]+)[0-9.]*\t/\1] = "/' -e 's/^/ choices[/' -e 's/$/";/'
|
||||
|
||||
# Nikon LensIDs are composite tags
|
||||
printf '%s\n' "Saving ${tmpdir}/nikon"
|
||||
xmlstarlet sel -T -t -m "taginfo/table/tag[@name='LensID']/values/key" -v "concat(@id,' ',val)" -n < <(exiftool -listx -composite:all) > "${tmpdir}/nikon" || { printf '%s\n' "Saving failed: ${tmpdir}/nikon"; exit 1; }
|
||||
sed -r -i -e '/^... /d' -e 's/^/ lenses["/' -e 's/([A-F0-9]+)[A-F0-9.]*\t/\1"] = "/' -e 's/$/";/' -e 's|(.* ")(.*) F([0-9]+)|\1\2 f/\3|' -e 's| F/([0-9]+)| f/\1|' "${tmpdir}/nikon"
|
||||
;;
|
||||
olympus) sed -r -i -e '/0 00 00\tNone/d' -e 's/^/ lenses["0/' -e 's/\t/"] = "/' -e 's/$/";/' -e 's| F([0-9]+)| f/\1|g' "${tmpdir}/olympus" ;;
|
||||
pentax) sed -r -i -e 's/^/ choices.insert(p_t(256 * /' -e 's/([0-9]+) ([0-9]+)([0-9.]*)/\1 + \2/' -e 's/\t/, "/' -e 's/$/"));/' -e 's| F([0-9]+)| f/\1|' "${tmpdir}/pentax" ;;
|
||||
sony)
|
||||
xmlstarlet sel -T -t -m "taginfo/table/tag[@name='LensID']/values/key" -v "concat(@id,' ',val)" -n < <("$et" -listx -composite:all) > "${tmpdir}/nikon"
|
||||
sed -r -i -e '/^... /d' -e 's/^/ {"/' -e 's/([A-F0-9]+)[A-F0-9.]*\t/\1", "/' -e 's/$/"},/' -e 's|(.* ")(.*) F([0-9]+)|\1\2 f/\3|' -e 's| F/([0-9]+)| f/\1|' "${tmpdir}/nikon"
|
||||
|
||||
# Olympus
|
||||
printf '%s\n' "Saving ${tmpdir}/olympus"
|
||||
xmlstarlet sel -T -t -m "taginfo/table/tag[@name='LensType']/values/key" -v "concat(@id,' ',val)" -n < <("$et" -listx -olympus:all) | sort -fuV > "${tmpdir}/olympus"
|
||||
sed -r -i -e '/0 00 00\tNone/d' -e 's/^/ lenses["0/' -e 's/\t/"] = "/' -e 's/$/";/' -e 's| F([0-9]+)| f/\1|g' "${tmpdir}/olympus"
|
||||
|
||||
# Pentax
|
||||
printf '%s\n' "Saving ${tmpdir}/pentax"
|
||||
xmlstarlet sel -T -t -m "taginfo/table/tag[@name='LensType']/values/key" -v "concat(@id,' ',val)" -n < <("$et" -listx -pentax:all) | sort -fuV > "${tmpdir}/pentax"
|
||||
sed -r -i -e 's/^/ choices.insert(p_t(256 * /' -e 's/([0-9]+) ([0-9]+)([0-9.]*)/\1 + \2/' -e 's/\t/, "/' -e 's/$/"));/' -e 's| F([0-9]+)| f/\1|' "${tmpdir}/pentax"
|
||||
|
||||
# Sony
|
||||
printf '%s\n' "Saving ${tmpdir}/sony"
|
||||
xmlstarlet sel -T -t -m "taginfo/table/tag[@name='LensType']/values/key" -v "concat(@id,' ',val)" -n < <("$et" -listx -sony:all) | sort -fuV > "${tmpdir}/sony"
|
||||
# Sony has more lenses under the LensType2 tag
|
||||
printf '%s\n' "Saving ${tmpdir}/sony-lenstype2"
|
||||
xmlstarlet sel -T -t -m "taginfo/table/tag[@name='LensType2']/values/key" -v "concat(@id,' ',val)" -n < <(exiftool -listx -sony:all) > "${tmpdir}/cam" || { printf '%s\n' "Saving failed: ${tmpdir}/cam"; exit 1; }
|
||||
sort -fuV "${tmpdir}/cam" > "${tmpdir}/sony-lenstype2"
|
||||
rm -f "${tmpdir}/cam"
|
||||
sed -r -i -e '/255\tTamron Lens (255)/d' -e 's/([0-9]+)[0-9.]*\t/\1, "/' -e 's/^/ choices.insert(p_t(/' -e 's/$/"));/' -e 's| F([0-9]+)| f/\1|g' "${tmpdir}/sony" "${tmpdir}/sony-lenstype2"
|
||||
;;
|
||||
esac
|
||||
|
||||
done
|
||||
xmlstarlet sel -T -t -m "taginfo/table/tag[@name='LensType2']/values/key" -v "concat(@id,' ',val)" -n < <("$et" -listx -sony:all) | sort -fuV > "${tmpdir}/sony-lenstype2"
|
||||
sed -r -i -e 's/^/ {/' -e 's/([0-9]+)[0-9.]*\t/\1, "/' -e 's/$/"},/' -e 's| F([0-9]+)| f/\1|g' "${tmpdir}/sony"
|
||||
sed -r -i -e '/255\tTamron Lens (255)/d' -e 's/([0-9]+)[0-9.]*\t/\1, "/' -e 's/^/ choices.insert(p_t(/' -e 's/$/"));/' -e 's| F([0-9]+)| f/\1|g' "${tmpdir}/sony-lenstype2"
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user