Update Nikon flash tags (#2274)

main
Peter 3 years ago committed by GitHub
parent e4adf388aa
commit ccebe7936e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -87,6 +87,7 @@ TABLES = Exif \
NikonFl1 \
NikonFl2 \
NikonFl3 \
NikonFl6 \
NikonFl7 \
NikonSiD80 \
NikonSiD40 \

@ -96,7 +96,12 @@ __NikonFl2__
__NikonFl3__
<br>
<h3>Nikon Flash Info 7 Tags (for version 0107 and 0108)</h3>
<h3>Nikon Flash Info 6 Tags</h3>
<p>Click on a column header to sort the table.</p>
__NikonFl6__
<br>
<h3>Nikon Flash Info 7 Tags</h3>
<p>Click on a column header to sort the table.</p>
__NikonFl7__
<br>

@ -778,33 +778,6 @@ available from: https://www.adobe.com/content/dam/acom/en/devnet/xmp/pdfs/XMPSDK
### 7.2 Exiv2 tags
For an explanation of Exiv2 keys, see [Exiv2 key syntax](#exiv2_key_syntax).
The following groups are defined for the Exif family:
```
GPSInfo Canon Nikon1 NikonMe OlympusFe8 SonyMisc2b
Image CanonCf Nikon2 NikonPc OlympusFe9 SonyMisc3c
Image2 CanonCs Nikon3 NikonPreview OlympusFi SonyMinolta
Image3 CanonFi NikonAFT NikonSi01xx OlympusIp SonySInfo1
Iop CanonPa NikonAf NikonSi02xx OlympusRd
MakerNote CanonPi NikonAf2 NikonSiD300a OlympusRd2 Samsung2
MpfInfo CanonPr NikonAf22 NikonSiD300b OlympusRi SamsungPictureWizard
Photo CanonSi NikonCb1 NikonSiD40 SamsungPreview
SubImage1 CanonTi NikonCb2 NikonSiD80 Sigma
SubImage2 NikonCb2a NikonVr
SubImage3 Casio NikonCb2b NikonWt Sony1
SubImage4 Casio2 NikonCb3 Sony1Cs
SubImage5 NikonCb4 Olympus Sony1Cs2
SubImage6 Minolta NikonFi Olympus2 Sony1MltCs7D
SubImage7 MinoltaCs5D NikonFl1 OlympusCs Sony1MltCsA100
SubImage8 MinoltaCs7D NikonFl2 OlympusEq Sony1MltCsNew
SubImage9 MinoltaCsNew NikonFl3 OlympusFe1 Sony1MltCsOld
SubThumb1 MinoltaCsOld NikonFl7 OlympusFe2 Sony2
Thumbnail NikonIi OlympusFe3 Sony2Cs
Panasonic NikonLd1 OlympusFe4 Sony2Cs2
Pentax PanasonicRaw NikonLd2 OlympusFe5 Sony2010e
PentaxDng NikonLd3 OlympusFe6 Sony2Fp
Fujifilm NikonLd4 OlympusFe7 SonyMisc1
```
A full list of built-in Exif, IPTC and XMP tags is available online at
https://www.exiv2.org/metadata.html. To query Exiv2 Groups and Tagnames,

@ -111,6 +111,7 @@ enum class IfdId : uint32_t {
nikonFl1Id,
nikonFl2Id,
nikonFl3Id,
nikonFl6Id,
nikonFl7Id,
nikonSi1Id,
nikonSi2Id,

@ -877,7 +877,8 @@ constexpr auto nikonArrayIdx = std::array{
NikonArrayIdx{0x00a8, "0100", 0, 0, NA}, NikonArrayIdx{0x00a8, "0101", 0, 0, NA},
NikonArrayIdx{0x00a8, "0102", 0, 1, NA}, NikonArrayIdx{0x00a8, "0103", 0, 2, NA},
NikonArrayIdx{0x00a8, "0104", 0, 2, NA}, NikonArrayIdx{0x00a8, "0105", 0, 2, NA},
NikonArrayIdx{0x00a8, "0107", 0, 3, NA}, NikonArrayIdx{0x00a8, "0108", 0, 3, NA},
NikonArrayIdx{0x00a8, "0106", 0, 3, NA}, NikonArrayIdx{0x00a8, "0107", 0, 4, NA},
NikonArrayIdx{0x00a8, "0108", 0, 4, NA},
// NikonAf
NikonArrayIdx{0x00b7, "0100", 30, 0, NA}, // These sizes have been found in tiff headers of MN
NikonArrayIdx{0x00b7, "0101", 84, 1, NA}, // tag 0xb7 in sample image metadata for each version

@ -66,11 +66,9 @@ constexpr TagDetails nikonFlashComp[] = {
constexpr TagDetails nikonColorSpace[] = {{1, N_("sRGB")}, {2, N_("Adobe RGB")}};
//! FlashMode, tag 0x0087
constexpr TagDetails nikonFlashMode[] = {{0, N_("Did not fire")},
{1, N_("Fire, manual")},
{7, N_("Fire, external")},
{8, N_("Fire, commander mode")},
{9, N_("Fire, TTL mode")}};
constexpr TagDetails nikonFlashMode[] = {
{0, N_("Did not fire")}, {1, N_("Fire, manual")}, {3, N_("Not ready")}, {6, N_("Off")},
{7, N_("Fire, external")}, {8, N_("Fire, commander mode")}, {9, N_("Fire, TTL mode")}, {18, N_("LED Light")}};
//! ShootingMode, tag 0x0089
constexpr TagDetailsBitmask nikonShootingMode[] = {{0x0001, N_("Continuous")},
@ -855,32 +853,159 @@ constexpr TagDetails nikonFlashFirmware[] = {{0x0000, N_("n/a")},
{0x0501, "5.01 (SB-900)"},
{0x0502, "5.02 (SB-900)"},
{0x0601, "6.01 (SB-700)"},
{0x0701, "7.01 (SB-910)"}};
{0x0701, "7.01 (SB-910)"},
{0x0800, "8.01 (SB-N5)"},
{0x0a00, "10.00 (SB-N7)"},
{0x0b00, "11.00 (SB-300)"},
{0x0d00, "13.00 (SB-500)"},
{0x0e00, "14.00 (SB-5000)"}};
//! FlashGNDistance
constexpr TagDetails nikonFlashGNDistance[] = {
{0, N_("None")}, {1, "0.1 m"}, {2, "0.2 m"}, {3, "0.3 m"}, {4, "0.4 m"}, {5, "0.5 m"}, {6, "0.6 m"},
{7, "0.7 m"}, {8, "0.8 m"}, {9, "0.9 m"}, {10, "1.0 m"}, {11, "1.1 m"}, {12, "1.3 m"}, {13, "1.4 m"},
{14, "1.6 m"}, {15, "1.8 m"}, {16, "2.0 m"}, {17, "2.2 m"}, {18, "2.5 m"}, {19, "2.8 m"}, {20, "3.2 m"},
{21, "3.6 m"}, {22, "4.0 m"}, {23, "4.5 m"}, {24, "5.0 m"}, {25, "5.6 m"}, {26, "6.3 m"}, {27, "7.1 m"},
{28, "8.0 m"}, {29, "9.0 m"}, {30, "10.0 m"}, {31, "11.0 m"}, {32, "13.0 m"}, {33, "14.0 m"}, {34, "16.0 m"},
{35, "18.0 m"}, {36, "20.0 m"}, {255, N_("n/a")}};
{0, N_("n/a")}, {1, "0.1 m"}, {2, "0.2 m"}, {3, "0.3 m"}, {4, "0.4 m"}, {5, "0.5 m"},
{6, "0.6 m"}, {7, "0.7 m"}, {8, "0.8 m"}, {9, "0.9 m"}, {10, "1.0 m"}, {11, "1.1 m"},
{12, "1.3 m"}, {13, "1.4 m"}, {14, "1.6 m"}, {15, "1.8 m"}, {16, "2.0 m"}, {17, "2.2 m"},
{18, "2.5 m"}, {19, "2.8 m"}, {20, "3.2 m"}, {21, "3.6 m"}, {22, "4.0 m"}, {23, "4.5 m"},
{24, "5.0 m"}, {25, "5.6 m"}, {26, "6.3 m"}, {27, "7.1 m"}, {28, "8.0 m"}, {29, "9.0 m"},
{30, "10.0 m"}, {31, "11.0 m"}, {32, "13.0 m"}, {33, "14.0 m"}, {34, "16.0 m"}, {35, "18.0 m"},
{36, "20.0 m"}, {37, "23.0 m"}, {38, "25.0 m"}, {39, "29.0 m"}, {128, N_("n/a")}, {129, "0.3 ft"},
{130, "0.7 ft"}, {131, "1.0 ft"}, {132, "1.3 ft"}, {133, "1.7 ft"}, {134, "2.0 ft"}, {135, "2.3 ft"},
{136, "2.6 ft"}, {137, "2.9 ft"}, {138, "3.3 ft"}, {139, "3.7 ft"}, {140, "4.1 ft"}, {141, "4.6 ft"},
{142, "5.2 ft"}, {143, "5.8 ft"}, {144, "6.6 ft"}, {145, "7.4 ft"}, {146, "8.3 ft"}, {147, "9.3 ft"},
{148, "10.0 ft"}, {149, "12.0 ft"}, {150, "13.0 ft"}, {151, "15.0 ft"}, {152, "17.0 ft"}, {153, "19.0 ft"},
{154, "21.0 ft"}, {155, "23.0 ft"}, {156, "26.0 ft"}, {157, "29.0 ft"}, {158, "33.0 ft"}, {159, "37.0 ft"},
{160, "42.0 ft"}, {161, "47.0 ft"}, {162, "52.0 ft"}, {163, "59.0 ft"}, {164, "66.0 ft"}, {165, "74.0 ft"},
{166, "83.0 ft"}, {167, "94.0 ft"}, {255, N_("n/a")}};
//! FlashControlMode
constexpr TagDetails nikonFlashControlMode[] = {
{0, N_("Off")}, {1, N_("iTTL-BL")}, {2, N_("iTTL")},
{3, N_("Auto Aperture")}, {4, N_("Automatic")}, {5, N_("GN (distance priority)")},
{6, N_("Manual")}, {7, N_("Repeating Flash")},
{0, N_("Off")}, {1, N_("TTL")},
{2, N_("iTTL")}, {3, N_("Auto Aperture")},
{4, N_("Automatic")}, {5, N_("GN (distance priority)")},
{6, N_("Manual")}, {7, N_("Repeating Flash")},
// 8: When used with Group A (and possibly Group B), may have an additional "Quick Wireless Flash Control [A:B]"
// mode that applies to Groups A and B. May only be available with Radio AWL modes?
// ?: Possibly includes "iTTL-BL", "i-AA" and "i-A" modes.
};
static constexpr bool flashModeUsesManualScale(const int64_t mode) {
return (mode == 6 || mode == 7);
}
//! ExternalFlashFlags
constexpr TagDetails nikonExternalFlashFlags[] = {
{0, N_("Fired")}, {2, N_("Bounce Flash")}, {4, N_("Wide Flash Adapter")}};
//! FlashColorFilter
constexpr TagDetails nikonFlashColorFilter[] = {{0, N_("None")}, {1, N_("FL-GL1")}, {2, N_("FL-GL2")},
{9, N_("TN-A1")}, {10, N_("TN-A2")}, {65, N_("Red")},
{66, N_("Blue")}, {67, N_("Yellow")}, {68, N_("Amber")}};
constexpr TagDetails nikonFlashColorFilter[] = {{0, N_("None")},
{1, N_("FL-GL1 (for fluorescent light)")},
{2, N_("FL-GL2 (for fluorescent light)")},
{9, N_("TN-A1 (for incandescent light)")},
{10, N_("TN-A2 (for incandescent light)")},
{65, N_("Red")},
{66, N_("Blue")},
{67, N_("Yellow")},
{68, N_("Amber")},
{79, N_("Other")}};
//! FlashWirelessOptions
constexpr TagDetails nikonFlashAWLMode[] = {
{0, N_("AWL Off")}, {1, N_("Optical AWL")}, {2, N_("Optical/Radio AWL")}, {3, N_("Radio AWL")}};
//! FlashExposureComp
constexpr TagDetails nikonFlashExposureComp[] = {{0, N_("Exposure Comp.: Entire frame")},
{4, N_("Exposure Comp.: Background Only")}};
//! FlashIlluminationPattern
constexpr TagDetails nikonFlashIlluminationPat[] = {{0, N_("Illumination Pat.: Standard")},
{1, N_("Illumination Pat.: Center-weighted")},
{2, N_("Illumination Pat.: Even")}};
//! FlashAdaptors
constexpr TagDetailsBitmask nikonFlashAdaptors[] = {
{0x04, N_("Bounce Flash adaptor")}, {0x10, N_("Wide Flash adaptor")}, {0x20, N_("Nikon Diffusion Dome")}};
static void printFlashCompensationValue(std::ostream& os, const unsigned char value, const bool manualScale) {
std::ios::fmtflags f(os.flags());
std::ostringstream oss;
oss.copyfmt(os);
if (manualScale) {
/*
// Format:
0 = "1/1"
1 = "1/1 (-1/6EV)"
2 = "1/1 (-1/3EV)"
3 = "1/1 (-1/2EV)"
4 = "1/1 (-2/3EV)"
5 = "1/1 (-5/6EV)"
6 = "1/2"
7 = "1/2 (-1/6EV)"
...
48 = "1/256"
*/
if (value > 48) {
os << "(" << value << ")";
os.flags(f);
return;
}
const auto mod = value % 6;
auto temp = (value < 6) ? 0 : (value - mod) / 6;
os << "1/" << std::pow(2, temp);
if (mod != 0) {
os << " (-";
switch (mod) {
case 1:
os << "1/6 EV)";
break;
case 2:
os << "1/3 EV)";
break;
case 3:
os << "1/2 EV)";
break;
case 4:
os << "2/3 EV)";
break;
case 5:
os << "5/6 EV)";
break;
}
}
} else {
/*
// Format uses 127 as boundary between +/- then values descend:
0 = "0.0EV"
1 = "-0.2EV"
2 = "-0.3EV"
3 = "-0.5EV"
4 = "-0.7EV"
5 = "-0.8EV"
6 = "-1.0EV"
7 = "-1.2EV"
...
127 = "-21.2EV"
128 = "+21.3EV"
129 = "+21.2EV"
130 = "+21.0EV"
...
255 = "+0.2"
*/
float output = 0.0;
if (value < 128) {
if (value != 0)
output = float(value) * float(-1.0);
} else {
output = float(256.0) - float(value);
}
os.precision(1);
if (value != 0)
os << std::showpos;
os << std::fixed << (output / 6) << " EV";
}
os.copyfmt(os);
os.flags(f);
}
// Nikon3 Flash Info 1 Tag Info
constexpr TagInfo Nikon3MakerNote::tagInfoFl1_[] = {
@ -971,44 +1096,168 @@ const TagInfo* Nikon3MakerNote::tagListFl3() {
return tagInfoFl3_;
}
// Nikon3 Flash Info 6 (0106) Tag Info
constexpr TagInfo Nikon3MakerNote::tagInfoFl6_[] = {
{0, "Version", N_("Version"), N_("Identifies the NikonFl version"), IfdId::nikonFl6Id, SectionId::makerTags,
undefined, 4, printExifVersion},
{4, "FlashSource", N_("Flash source"), N_("The type of flash used"), IfdId::nikonFl6Id, SectionId::makerTags,
unsignedByte, 1, EXV_PRINT_TAG(nikonFlashSource)},
// 5: May be connected to high-speed shutter setting?
{6, "ExternalFlashFirmware", N_("External flash firmware"), N_("External flash firmware version"),
IfdId::nikonFl6Id, SectionId::makerTags, unsignedShort, 1, EXV_PRINT_TAG(nikonFlashFirmware)},
{8, "ExternalFlashData1", N_("External flash data 1"),
N_("The Speedlight flash status and any attached flash adapters"), IfdId::nikonFl6Id, SectionId::makerTags,
unsignedByte, 1, printExternalFlashData1Fl6},
{9, "ExternalFlashData2", N_("External flash data 2"),
N_("The external flash status and the mode used for the Master flash (see FlashSource)"), IfdId::nikonFl6Id,
SectionId::makerTags, unsignedByte, 1, printExternalFlashData2Fl6},
{10, "FlashCompensationMaster", N_("Flash compensation Master"),
N_("Flash compensation for the Master flash (see FlashSource)"), IfdId::nikonFl6Id, SectionId::makerTags,
unsignedByte, 1, printFlashMasterDataFl6},
{12, "FlashFocalLength", N_("Flash focal length"), N_("Flash focal length"), IfdId::nikonFl6Id,
SectionId::makerTags, unsignedByte, 1, printFlashFocalLength},
{13, "RepeatingFlashRate", N_("Repeating flash rate"), N_("For repeating flash mode, the rate (in Hz)"),
IfdId::nikonFl6Id, SectionId::makerTags, unsignedByte, 1, printRepeatingFlashRate},
{14, "RepeatingFlashCount", N_("Repeating flash count"),
N_("For repeating flash mode, the number of flash firings"), IfdId::nikonFl6Id, SectionId::makerTags, unsignedByte,
1, printRepeatingFlashCount},
{15, "FlashGNDistance", N_("Flash GN distance"),
N_("For GN (distance priority) mode on the Master flash (see FlashSource), the distance to the subject"),
IfdId::nikonFl6Id, SectionId::makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonFlashGNDistance)},
{16, "FlashColorFilter", N_("Flash color filter"), N_("The attached color filter"), IfdId::nikonFl6Id,
SectionId::makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonFlashColorFilter)},
{17, "FlashGroupAControlData", N_("Flash Group A control data"), N_("The mode used for Group A flashes"),
IfdId::nikonFl6Id, SectionId::makerTags, unsignedByte, 1, printFlashGroupAControlData},
{18, "FlashGroupBCControlData", N_("Flash Group B/C control data"), N_("The modes used for Group B and C flashes"),
IfdId::nikonFl6Id, SectionId::makerTags, unsignedByte, 1, printFlashGroupBCControlData},
{19, "FlashCompensationGroupA", N_("Flash compensation Group A"), N_("Flash compensation for Group A flashes"),
IfdId::nikonFl6Id, SectionId::makerTags, unsignedByte, 1, printFlashGroupADataFl6},
{20, "FlashCompensationGroupB", N_("Flash compensation Group B data"), N_("Flash compensation for Group B flashes"),
IfdId::nikonFl6Id, SectionId::makerTags, unsignedByte, 1, printFlashGroupBDataFl6},
{21, "FlashCompensationGroupC", N_("Flash Compensation Group C data"), N_("Flash compensation for Group C flashes"),
IfdId::nikonFl6Id, SectionId::makerTags, unsignedByte, 1, printFlashGroupCDataFl6},
// 22: Possibly includes nikonFlashExposureComp array?
{28, "CameraExposureCompensation", N_("Camera exposure compensation"), N_("The camera's exposure compensation"),
IfdId::nikonFl6Id, SectionId::makerTags, unsignedByte, 1, printCameraExposureCompensation},
{29, "CameraFlashCompensation", N_("Camera flash compensation"), N_("The camera's flash compensation"),
IfdId::nikonFl6Id, SectionId::makerTags, unsignedByte, 1, printCameraExposureCompensation},
{39, "FlashMasterOutput", N_("Flash Master output"),
N_("Total flash output for the Master (see FlashSource). FlashMasterOutput = CameraExposureCompensation "
"(if exposure uses \"Entire frame\" mode and Master uses a non-manual mode) + CameraFlashCompensation (if "
"Master uses a non-manual mode) + FlashCompensationMaster"),
IfdId::nikonFl6Id, SectionId::makerTags, unsignedByte, 1, printFlashMasterDataFl6},
{40, "FlashGroupAOutput", N_("Flash Group A output"),
N_("Total flash output for Group A. FlashGroupAOutput = CameraExposureCompensation (if exposure uses \"Entire "
"frame\" mode and Group A uses a non-manual mode) + CameraFlashCompensation (if Group A uses a non-manual "
"mode) + "
"FlashCompensationGroupA"),
IfdId::nikonFl6Id, SectionId::makerTags, unsignedByte, 1, printFlashGroupADataFl6},
{41, "FlashGroupBOutput", N_("Flash Group B output"),
N_("Total flash output for Group B. FlashGroupBOutput = CameraExposureCompensation (if exposure uses \"Entire "
"frame\" mode and Group B uses a non-manual mode) + CameraFlashCompensation (if Group B uses a non-manual "
"mode) + "
"FlashCompensationGroupB"),
IfdId::nikonFl6Id, SectionId::makerTags, unsignedByte, 1, printFlashGroupBDataFl6},
{42, "FlashGroupCOutput", N_("Flash Group C output"),
N_("Total flash output for Group C. FlashGroupCOutput = CameraExposureCompensation (if exposure uses \"Entire "
"frame\" mode and Group C uses a non-manual mode) + CameraFlashCompensation (if Group C uses a non-manual "
"mode) + "
"FlashCompensationGroupC"),
IfdId::nikonFl6Id, SectionId::makerTags, unsignedByte, 1, printFlashGroupCDataFl6},
// End of list marker
{0xffff, "(UnknownNikonFl6Tag)", "(UnknownNikonFl6Tag)", N_("Unknown Nikon Flash Info 6 Tag"), IfdId::nikonFl6Id,
SectionId::makerTags, unsignedByte, 1, printValue},
};
const TagInfo* Nikon3MakerNote::tagListFl6() {
return tagInfoFl6_;
}
// Nikon3 Flash Info 7 (0107 and 0108) Tag Info
constexpr TagInfo Nikon3MakerNote::tagInfoFl7_[] = {
{0, "Version", N_("Version"), N_("Flash info version"), IfdId::nikonFl7Id, SectionId::makerTags, undefined, 4,
printExifVersion},
{4, "FlashSource", N_("Flash source"), N_("The type of flash used (if any)"), IfdId::nikonFl7Id,
SectionId::makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonFlashSource)},
{6, "ExternalFlashFirmware", N_("External Flash Firmware"), N_("External flash firmware version"),
{0, "Version", N_("Version"), N_("Identifies the NikonFl version"), IfdId::nikonFl7Id, SectionId::makerTags,
undefined, 4, printExifVersion},
{4, "FlashSource", N_("Flash source"), N_("The type of flash used"), IfdId::nikonFl7Id, SectionId::makerTags,
unsignedByte, 1, EXV_PRINT_TAG(nikonFlashSource)},
// 5: Possibly connected to high-speed shutter setting?
{6, "ExternalFlashFirmware", N_("External flash firmware"), N_("The firmware version used by the external flash"),
IfdId::nikonFl7Id, SectionId::makerTags, unsignedShort, 1, EXV_PRINT_TAG(nikonFlashFirmware)},
{8, "ExternalFlashData1", N_("External flash data"), N_("External flash data"), IfdId::nikonFl7Id,
SectionId::makerTags, unsignedByte, 1, printExternalFlashData1},
{9, "ExternalFlashData2", N_("External flash ready state"), N_("External flash ready state"), IfdId::nikonFl7Id,
SectionId::makerTags, unsignedByte, 1, printExternalFlashData2},
{10, "FlashCompensation", N_("Flash compensation"), N_("Flash compensation"), IfdId::nikonFl7Id,
SectionId::makerTags, signedByte, 1, printFlashCompensation},
{8, "ExternalFlashData1", N_("External flash data 1"),
N_("The external flash state, zoom status and attached flash adapters"), IfdId::nikonFl7Id, SectionId::makerTags,
unsignedByte, 1, printExternalFlashData1Fl7},
{9, "ExternalFlashData2", N_("External flash data 2"), N_("The mode used for the Master flash (see FlashSource)"),
IfdId::nikonFl7Id, SectionId::makerTags, unsignedByte, 1, printExternalFlashData2},
{10, "FlashCompensationMaster", N_("Flash compensation Master"),
N_("Flash compensation for the Master flash (see FlashSource)"), IfdId::nikonFl7Id, SectionId::makerTags,
unsignedByte, 1, printFlashMasterDataFl7},
// 12: Purpose of tag is unclear as manual zoom value is found in tag 38. Possibly connected to automatic zoom?
{12, "FlashFocalLength", N_("Flash focal length"), N_("Flash focal length"), IfdId::nikonFl7Id,
SectionId::makerTags, unsignedByte, 1, printFlashFocalLength},
{13, "RepeatingFlashRate", N_("Repeating flash rate"), N_("Repeating flash rate"), IfdId::nikonFl7Id,
SectionId::makerTags, unsignedByte, 1, printRepeatingFlashRate},
{14, "RepeatingFlashCount", N_("Repeating flash count"), N_("Repeating flash count"), IfdId::nikonFl7Id,
SectionId::makerTags, unsignedByte, 1, printRepeatingFlashCount},
{15, "FlashGNDistance", N_("Flash GN Distance"), N_("Flash GN distance"), IfdId::nikonFl7Id, SectionId::makerTags,
unsignedByte, 1, EXV_PRINT_TAG(nikonFlashGNDistance)},
{17, "FlashGroupAControlData", N_("Flash group A control data"), N_("Flash group A control data"),
IfdId::nikonFl7Id, SectionId::makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonFlashControlMode)},
{18, "FlashGroupBCControlData", N_("Flash group B/C control data"), N_("Flash group B/C control data"),
{13, "RepeatingFlashRate", N_("Repeating flash rate"), N_("For repeating flash modes, the rate (in Hz)"),
IfdId::nikonFl7Id, SectionId::makerTags, unsignedByte, 1, printRepeatingFlashRate},
{14, "RepeatingFlashCount", N_("Repeating flash count"),
N_("For repeating flash modes, the number of flash firings"), IfdId::nikonFl7Id, SectionId::makerTags,
unsignedByte, 1, printRepeatingFlashCount},
{15, "FlashGNDistance", N_("Flash GN distance"),
N_("For GN (distance priority) mode on the Master flash (see FlashSource), the distance to the subject"),
IfdId::nikonFl7Id, SectionId::makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonFlashGNDistance)},
{16, "FlashColorFilter", N_("Flash color filter"), N_("The attached color filters"), IfdId::nikonFl7Id,
SectionId::makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonFlashColorFilter)},
// 17: Possibly also contains control data for Group D in upper nibble?
{17, "FlashGroupAControlData", N_("Flash Group A control data"), N_("The mode used for Group A flashes"),
IfdId::nikonFl7Id, SectionId::makerTags, unsignedByte, 1, printFlashGroupAControlData},
{18, "FlashGroupBCControlData", N_("Flash Groups B/C control data"), N_("The modes used for Group B and C flashes"),
IfdId::nikonFl7Id, SectionId::makerTags, unsignedByte, 1, printFlashGroupBCControlData},
{40, "FlashGroupAData", N_("Flash group A data"),
N_("Depending upon FlashGroupAControlData, either the FlashGroupACompensation value or the FlashGroupAOutput "
"value"),
IfdId::nikonFl7Id, SectionId::makerTags, unsignedByte, 1, printFlashGroupAData},
{41, "FlashGroupBData", N_("Flash group B data"),
N_("Depending upon FlashGroupBCControlData, either the FlashGroupBCompensation value or the FlashGroupBOutput "
"value"),
IfdId::nikonFl7Id, SectionId::makerTags, unsignedByte, 1, printFlashGroupBData},
{42, "FlashGroupCData", N_("Flash group C data"),
N_("Depending upon FlashGroupBCControlData, either the FlashGroupCCompensation value or the FlashGroupCOutput "
"value"),
IfdId::nikonFl7Id, SectionId::makerTags, unsignedByte, 1, printFlashGroupCData},
{19, "FlashCompensationGroupA", N_("Flash compensation Group A"), N_("Flash compensation for Group A flashes"),
IfdId::nikonFl7Id, SectionId::makerTags, unsignedByte, 1, printFlashGroupADataFl7},
{20, "FlashCompensationGroupB", N_("Flash compensation Group B data"), N_("Flash compensation for Group B flashes"),
IfdId::nikonFl7Id, SectionId::makerTags, unsignedByte, 1, printFlashGroupBDataFl7},
{21, "FlashCompensationGroupC", N_("Flash Compensation Group C data"), N_("Flash compensation for Group C flashes"),
IfdId::nikonFl7Id, SectionId::makerTags, unsignedByte, 1, printFlashGroupCDataFl7},
{22, "ExternalFlashData3", N_("External flash data 3"),
N_("For the camera's exposure compensation, defines how the flash level is adjusted"), IfdId::nikonFl7Id,
SectionId::makerTags, unsignedByte, 1, printExternalFlashData3},
{27, "CameraFlashOutput", N_("Camera flash output"),
N_("Total flash output for the camera. CameraFlashOutput = CameraExposureCompensation (if ExternalFlashData3 "
"uses \"Entire frame\" mode) + CameraFlashCompensation"),
IfdId::nikonFl7Id, SectionId::makerTags, unsignedByte, 1, printCameraExposureCompensation},
{28, "CameraExposureCompensation", N_("Camera exposure compensation"), N_("The camera's exposure compensation"),
IfdId::nikonFl7Id, SectionId::makerTags, unsignedByte, 1, printCameraExposureCompensation},
{29, "CameraFlashCompensation", N_("Camera flash compensation"), N_("The camera's flash compensation"),
IfdId::nikonFl7Id, SectionId::makerTags, unsignedByte, 1, printCameraExposureCompensation},
// 34: Possible that FV Lock sets '0100 0000'?
{37, "ExternalFlashData4", N_("External flash data 4"), N_("The flash illumination pattern"), IfdId::nikonFl7Id,
SectionId::makerTags, unsignedByte, 1, printExternalFlashData4},
{38, "FlashZoomHeadPosition", N_("Flash zoom head position"), N_("Flash zoom head position (in mm)"),
IfdId::nikonFl7Id, SectionId::makerTags, unsignedByte, 1, printFlashZoomHeadPosition},
{39, "FlashMasterOutput", N_("Flash Master output"),
N_("Total flash output for the Master (see FlashSource). FlashMasterOutput = CameraFlashOutput (if Master uses a "
"non-manual mode) + "
"FlashCompensationMaster"),
IfdId::nikonFl7Id, SectionId::makerTags, unsignedByte, 1, printFlashMasterDataFl7},
{40, "FlashGroupAOutput", N_("Flash Group A output"),
N_("Total flash output for Group A. FlashGroupAOutput = CameraFlashOutput (if Group A uses a non-manual mode) + "
"FlashCompensationGroupA"),
IfdId::nikonFl7Id, SectionId::makerTags, unsignedByte, 1, printFlashGroupADataFl7},
{41, "FlashGroupBOutput", N_("Flash Group B output"),
N_("Total flash output for Group B. FlashGroupBOutput = CameraFlashOutput (if Group B uses a non-manual mode) + "
"FlashCompensationGroupB"),
IfdId::nikonFl7Id, SectionId::makerTags, unsignedByte, 1, printFlashGroupBDataFl7},
{42, "FlashGroupCOutput", N_("Flash Group C output"),
N_("Total flash output for Group C. FlashGroupCOutput = CameraFlashOutput (if Group C uses a non-manual mode) + "
"FlashCompensationGroupC"),
IfdId::nikonFl7Id, SectionId::makerTags, unsignedByte, 1, printFlashGroupCDataFl7},
// 43-46: Each corresponds to M/A/B/C - set when using TTL modes, otherwise is zero. Could be connected to the
// monitor pre-flashes?
{67, "WirelessFlashData", N_("Wireless flash data"), N_("Advanced Wireless Lighting (AWL) communication mode"),
IfdId::nikonFl7Id, SectionId::makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonFlashAWLMode)},
// 68-72: Related to WirelessFlashData? Set if AWL is on, zero if AWL is off. 68-71 connected to M/A/B/C?
// ?: 1. Groups D/E/F will have equivalent tags to Groups A/B/C (see note in tag 17). This could also include
// equivalent tags in 43-46?
// 2. Compatible remote flashes using 'Radio AWL' could transmit settings/data back to the Speedflash?
// 3. Automatic flash mode (A) uses an aperture value.
// 4. The Speedlight can detect if the Master is not pointed straight ahead. The vertical and horizontal
// angles/positions of the flash could be recorded?
// End of list marker
{0xffff, "(UnknownNikonFl7Tag)", "(UnknownNikonFl7Tag)", N_("Unknown Nikon Flash Info 7 Tag"), IfdId::nikonFl7Id,
SectionId::makerTags, unsignedByte, 1, printValue},
@ -3047,7 +3296,8 @@ std::ostream& Nikon3MakerNote::printRepeatingFlashCount(std::ostream& os, const
return os;
}
std::ostream& Nikon3MakerNote::printExternalFlashData1(std::ostream& os, const Value& value, const ExifData*) {
std::ostream& Nikon3MakerNote::printExternalFlashData1Fl6(std::ostream& os, const Value& value,
const ExifData* metadata) {
std::ios::fmtflags f(os.flags());
if (value.count() != 1 || value.typeId() != unsignedByte) {
os << "(" << value << ")";
@ -3056,70 +3306,156 @@ std::ostream& Nikon3MakerNote::printExternalFlashData1(std::ostream& os, const V
}
std::ostringstream oss;
oss.copyfmt(os);
os << (value.toInt64() & 0x80 ? _("External flash zoom override") : _("No external flash zoom override"));
os << ", ";
os << (value.toInt64() & 0x01 ? _("external flash attached") : _("external flash not attached"));
const auto v0 = value.toUint32(0);
os << (v0 & 0x01 ? _("Fired") : _("Did not fire"));
if (v0 & 0x01) {
std::ostringstream ossTemp;
printTagBitmask<std::size(nikonFlashAdaptors), nikonFlashAdaptors>(ossTemp, value, metadata);
std::string tempStr = ossTemp.str();
if (!tempStr.empty()) {
os << ", " << tempStr;
}
}
os.copyfmt(oss);
os.flags(f);
return os;
}
std::ostream& Nikon3MakerNote::printExternalFlashData2(std::ostream& os, const Value& value, const ExifData*) {
std::ostream& Nikon3MakerNote::printExternalFlashData2Fl6(std::ostream& os, const Value& value,
const ExifData* metadata) {
std::ios::fmtflags f(os.flags());
if (value.count() != 1 || value.typeId() != unsignedByte) {
os << "(" << value << ")";
os.flags(f);
return os;
}
std::ostringstream oss;
oss.copyfmt(os);
const auto temp = value.toInt64();
const auto v0 = value.toUint32(0);
os << (v0 & 0x80 ? _("External flash on") : _("External flash off"));
switch (temp & 0x07) {
case 0:
os << _("n/a");
break;
case 1:
os << _("Ready");
break;
case 6:
os << _("Not ready");
break;
default:
os << "(" << temp << ")";
break;
if (v0 & 0x80) {
os << ", ";
printTag<std::size(nikonFlashControlMode), nikonFlashControlMode>(os, (value.toUint32() & 0x0F), metadata);
}
os.copyfmt(oss);
os.flags(f);
return os;
}
std::ostream& Nikon3MakerNote::printFlashCompensation(std::ostream& os, const Value& value, const ExifData*) {
std::ostream& Nikon3MakerNote::printExternalFlashData1Fl7(std::ostream& os, const Value& value,
const ExifData* metadata) {
std::ios::fmtflags f(os.flags());
if (value.count() != 1 || value.typeId() != signedByte) {
if (value.count() != 1 || value.typeId() != unsignedByte) {
os << "(" << value << ")";
os.flags(f);
return os;
}
std::ostringstream oss;
oss.copyfmt(os);
float temp = (value.toFloat() / static_cast<float>(-6.0));
const auto v0 = value.toUint32();
os << (v0 & 0x01 ? _("External flash on") : _("External flash off"));
if (v0 & 0x01) {
os << ", ";
os << (v0 & 0x80 ? _("External flash zoom override") : _("No external flash zoom override"));
std::ostringstream ossTemp;
printTagBitmask<std::size(nikonFlashAdaptors), nikonFlashAdaptors>(ossTemp, value, metadata);
std::string tempStr = ossTemp.str();
if (!tempStr.empty()) {
os << ", " << tempStr;
}
}
os.copyfmt(oss);
os.flags(f);
return os;
}
if (temp == 0)
os << 0;
else if (!std::isfinite(temp))
std::ostream& Nikon3MakerNote::printExternalFlashData2(std::ostream& os, const Value& value, const ExifData* metadata) {
std::ios::fmtflags f(os.flags());
if (value.count() != 1 || value.typeId() != unsignedByte) {
os << "(" << value << ")";
else if (std::abs(std::remainderf(temp, 1)) < 0.001)
os << std::round(temp);
else if (std::abs(std::remainderf(temp * 2, 1)) < 0.001)
os << std::round(temp * 2) << "/2";
else if (std::abs(std::remainderf(temp * 3, 1)) < 0.001)
os << std::round(temp * 3) << "/3";
else
os << std::setprecision(3) << temp;
os.flags(f);
return os;
}
printTag<std::size(nikonFlashControlMode), nikonFlashControlMode>(os, (value.toUint32() & 0x0F), metadata);
os.flags(f);
return os;
}
std::ostream& Nikon3MakerNote::printFlashMasterDataFl6(std::ostream& os, const Value& value, const ExifData* metadata) {
std::ios::fmtflags f(os.flags());
if (value.count() != 1 || value.typeId() != unsignedByte) {
os << "(" << value << ")";
os.flags(f);
return os;
}
// Check if using an automated or manual mode
auto pos = metadata->findKey(ExifKey("Exif.NikonFl6.ExternalFlashData1"));
if (pos == metadata->end() || pos->count() != 1 || pos->typeId() != unsignedByte) {
os << "(" << value << ")";
os.flags(f);
return os;
}
const auto mode = pos->toUint32(0) & 0x0F;
if (mode == 0) {
os << _("n/a");
os.flags(f);
return os;
}
printFlashCompensationValue(os, static_cast<unsigned char>(value.toUint32(0)), flashModeUsesManualScale(mode));
os.flags(f);
return os;
}
std::ostream& Nikon3MakerNote::printFlashMasterDataFl7(std::ostream& os, const Value& value, const ExifData* metadata) {
std::ios::fmtflags f(os.flags());
if (value.count() != 1 || value.typeId() != unsignedByte) {
os << "(" << value << ")";
os.flags(f);
return os;
}
// Check if using an automated or manual mode
auto pos = metadata->findKey(ExifKey("Exif.NikonFl7.ExternalFlashData2"));
if (pos == metadata->end() || pos->count() != 1 || pos->typeId() != unsignedByte) {
os << "(" << value << ")";
os.flags(f);
return os;
}
const auto mode = pos->toUint32(0) & 0x0F;
if (mode == 0) {
os << _("n/a");
os.flags(f);
return os;
}
printFlashCompensationValue(os, static_cast<unsigned char>(value.toUint32(0)), flashModeUsesManualScale(mode));
os.flags(f);
return os;
}
std::ostream& Nikon3MakerNote::printFlashGroupAControlData(std::ostream& os, const Value& value, const ExifData* data) {
std::ios::fmtflags f(os.flags());
if (value.count() != 1 || value.typeId() != unsignedByte) {
os << "(" << value << ")";
os.flags(f);
return os;
}
std::ostringstream oss;
oss.copyfmt(os);
printTag<std::size(nikonFlashControlMode), nikonFlashControlMode>(os, (value.toUint32() & 0x0F), data);
os.copyfmt(oss);
os.flags(f);
@ -3147,7 +3483,7 @@ std::ostream& Nikon3MakerNote::printFlashGroupBCControlData(std::ostream& os, co
return os;
}
std::ostream& Nikon3MakerNote::printFlashGroupAData(std::ostream& os, const Value& value, const ExifData* metadata) {
std::ostream& Nikon3MakerNote::printFlashGroupADataFl6(std::ostream& os, const Value& value, const ExifData* metadata) {
std::ios::fmtflags f(os.flags());
if (value.count() != 1 || value.typeId() != unsignedByte) {
os << "(" << value << ")";
@ -3155,35 +3491,57 @@ std::ostream& Nikon3MakerNote::printFlashGroupAData(std::ostream& os, const Valu
return os;
}
std::ostringstream oss;
oss.copyfmt(os);
double temp = value.toFloat() / (-6.0);
// Check if using an automated or manual mode
auto pos = metadata->findKey(ExifKey("Exif.NikonFl6.FlashGroupAControlData"));
if (pos == metadata->end() || pos->count() != 1 || pos->typeId() != unsignedByte) {
os << "(" << value << ")";
os.flags(f);
return os;
}
const auto mode = pos->toUint32(0) & 0x0F;
if (mode == 0) {
os << _("n/a");
os.flags(f);
return os;
}
printFlashCompensationValue(os, static_cast<unsigned char>(value.toUint32(0)), flashModeUsesManualScale(mode));
os.flags(f);
return os;
}
std::ostream& Nikon3MakerNote::printFlashGroupADataFl7(std::ostream& os, const Value& value, const ExifData* metadata) {
std::ios::fmtflags f(os.flags());
if (value.count() != 1 || value.typeId() != unsignedByte) {
os << "(" << value << ")";
os.flags(f);
return os;
}
// Check if using an automated or manual mode
auto pos = metadata->findKey(ExifKey("Exif.NikonFl7.FlashGroupAControlData"));
if (pos == metadata->end() || pos->count() != 1 || pos->typeId() != unsignedByte) {
os << "(" << value << ")";
} else {
if (pos->toInt64() < 0x06) {
// FlashGroupACompensation value
if (temp == 0)
os << 0;
else
os << std::fixed << std::setprecision(1) << temp;
} else {
// FlashGroupAOutput value
double flashGroupAOutput = std::exp2(temp);
if (flashGroupAOutput > 0.99)
os << _("Full");
else
os << std::setprecision(2) << std::round(flashGroupAOutput * 100) << "%";
}
os.flags(f);
return os;
}
os.copyfmt(oss);
const auto mode = pos->toUint32(0) & 0x0F;
if (mode == 0) {
os << _("n/a");
os.flags(f);
return os;
}
printFlashCompensationValue(os, static_cast<unsigned char>(value.toUint32(0)), flashModeUsesManualScale(mode));
os.flags(f);
return os;
}
std::ostream& Nikon3MakerNote::printFlashGroupBData(std::ostream& os, const Value& value, const ExifData* metadata) {
std::ostream& Nikon3MakerNote::printFlashGroupBDataFl6(std::ostream& os, const Value& value, const ExifData* metadata) {
std::ios::fmtflags f(os.flags());
if (value.count() != 1 || value.typeId() != unsignedByte) {
os << "(" << value << ")";
@ -3191,35 +3549,57 @@ std::ostream& Nikon3MakerNote::printFlashGroupBData(std::ostream& os, const Valu
return os;
}
std::ostringstream oss;
oss.copyfmt(os);
double temp = value.toFloat() / (-6.0);
// Check if using an automated or manual mode
auto pos = metadata->findKey(ExifKey("Exif.NikonFl6.FlashGroupBCControlData"));
if (pos == metadata->end() || pos->count() != 1 || pos->typeId() != unsignedByte) {
os << "(" << value << ")";
os.flags(f);
return os;
}
const auto mode = pos->toUint32(0) >> 4;
if (mode == 0) {
os << _("n/a");
os.flags(f);
return os;
}
printFlashCompensationValue(os, static_cast<unsigned char>(value.toUint32(0)), flashModeUsesManualScale(mode));
os.flags(f);
return os;
}
std::ostream& Nikon3MakerNote::printFlashGroupBDataFl7(std::ostream& os, const Value& value, const ExifData* metadata) {
std::ios::fmtflags f(os.flags());
if (value.count() != 1 || value.typeId() != unsignedByte) {
os << "(" << value << ")";
os.flags(f);
return os;
}
// Check if using an automated or manual mode
auto pos = metadata->findKey(ExifKey("Exif.NikonFl7.FlashGroupBCControlData"));
if (pos == metadata->end() || pos->count() != 1 || pos->typeId() != unsignedByte) {
os << "(" << value << ")";
} else {
if (pos->toInt64() < 0x06) {
// FlashGroupBCompensation value
if (temp == 0)
os << 0;
else
os << std::fixed << std::setprecision(1) << temp;
} else {
// FlashGroupBOutput value
double flashGroupAOutput = std::exp2(temp);
if (flashGroupAOutput > 0.99)
os << _("Full");
else
os << std::setprecision(2) << std::round(flashGroupAOutput * 100) << "%";
}
os.flags(f);
return os;
}
os.copyfmt(oss);
const auto mode = pos->toUint32(0) >> 4;
if (mode == 0) {
os << _("n/a");
os.flags(f);
return os;
}
printFlashCompensationValue(os, static_cast<unsigned char>(value.toUint32(0)), flashModeUsesManualScale(mode));
os.flags(f);
return os;
}
std::ostream& Nikon3MakerNote::printFlashGroupCData(std::ostream& os, const Value& value, const ExifData* metadata) {
std::ostream& Nikon3MakerNote::printFlashGroupCDataFl6(std::ostream& os, const Value& value, const ExifData* metadata) {
std::ios::fmtflags f(os.flags());
if (value.count() != 1 || value.typeId() != unsignedByte) {
os << "(" << value << ")";
@ -3227,31 +3607,118 @@ std::ostream& Nikon3MakerNote::printFlashGroupCData(std::ostream& os, const Valu
return os;
}
std::ostringstream oss;
oss.copyfmt(os);
double temp = value.toFloat() / (-6.0);
// Check if using an automated or manual mode
auto pos = metadata->findKey(ExifKey("Exif.NikonFl6.FlashGroupBCControlData"));
if (pos == metadata->end() || pos->count() != 1 || pos->typeId() != unsignedByte) {
os << "(" << value << ")";
os.flags(f);
return os;
}
const auto mode = pos->toUint32(0) & 0x000F;
if (mode == 0) {
os << _("n/a");
os.flags(f);
return os;
}
printFlashCompensationValue(os, static_cast<unsigned char>(value.toUint32(0)), flashModeUsesManualScale(mode));
os.flags(f);
return os;
}
std::ostream& Nikon3MakerNote::printFlashGroupCDataFl7(std::ostream& os, const Value& value, const ExifData* metadata) {
std::ios::fmtflags f(os.flags());
if (value.count() != 1 || value.typeId() != unsignedByte) {
os << "(" << value << ")";
os.flags(f);
return os;
}
// Check if using an automated or manual mode
auto pos = metadata->findKey(ExifKey("Exif.NikonFl7.FlashGroupBCControlData"));
if (pos == metadata->end() || pos->count() != 1 || pos->typeId() != unsignedByte) {
os << "(" << value << ")";
} else {
if (pos->toInt64() < 0x06) {
// FlashGroupCCompensation value
if (temp == 0)
os << 0;
else
os << std::fixed << std::setprecision(1) << temp;
} else {
// FlashGroupCOutput value
double flashGroupAOutput = std::exp2(temp);
if (flashGroupAOutput > 0.99)
os << _("Full");
else
os << std::setprecision(2) << std::round(flashGroupAOutput * 100) << "%";
}
os.flags(f);
return os;
}
const auto mode = pos->toUint32(0) & 0x000F;
if (mode == 0) {
os << _("n/a");
os.flags(f);
return os;
}
printFlashCompensationValue(os, static_cast<unsigned char>(value.toUint32(0)), flashModeUsesManualScale(mode));
os.flags(f);
return os;
}
std::ostream& Nikon3MakerNote::printExternalFlashData3(std::ostream& os, const Value& value, const ExifData* data) {
std::ios::fmtflags f(os.flags());
if (value.count() != 1 || value.typeId() != unsignedByte) {
os << "(" << value << ")";
os.flags(f);
return os;
}
printTag<std::size(nikonFlashExposureComp), nikonFlashExposureComp>(os, (value.toUint32(0) & 0x04), data);
os.flags(f);
return os;
}
std::ostream& Nikon3MakerNote::printCameraExposureCompensation(std::ostream& os, const Value& value, const ExifData*) {
std::ios::fmtflags f(os.flags());
if (value.count() != 1 || value.typeId() != unsignedByte) {
os << "(" << value << ")";
os.flags(f);
return os;
}
printFlashCompensationValue(os, static_cast<unsigned char>(value.toUint32(0)), false);
os.flags(f);
return os;
}
std::ostream& Nikon3MakerNote::printExternalFlashData4(std::ostream& os, const Value& value, const ExifData* metadata) {
std::ios::fmtflags f(os.flags());
if (value.count() != 1 || value.typeId() != unsignedByte) {
os << "(" << value << ")";
os.flags(f);
return os;
}
printTag<std::size(nikonFlashIlluminationPat), nikonFlashIlluminationPat>(os, value.toUint32(0), metadata);
os.flags(f);
return os;
}
std::ostream& Nikon3MakerNote::printFlashZoomHeadPosition(std::ostream& os, const Value& value, const ExifData*) {
std::ios::fmtflags f(os.flags());
if (value.count() != 1 || value.typeId() != unsignedByte) {
os << "(" << value << ")";
os.flags(f);
return os;
}
std::ostringstream oss;
oss.copyfmt(os);
const auto v0 = value.toUint32(0);
if (v0 == 0) {
os << _("n/a");
os.flags(f);
return os;
}
os << v0 << " mm";
os.copyfmt(oss);
os.flags(f);
return os;
}

@ -105,6 +105,8 @@ class Nikon3MakerNote {
static const TagInfo* tagListFl2();
//! Return read-only list of built-in Flash Info 3 tags
static const TagInfo* tagListFl3();
//! Return read-only list of built-in Flash Info 6 (0106) tags
static const TagInfo* tagListFl6();
//! Return read-only list of built-in Flash Info 7 (0107 and 0108) tags
static const TagInfo* tagListFl7();
//! Return read-only list of built-in Shot Info D80 tags
@ -195,20 +197,42 @@ class Nikon3MakerNote {
static std::ostream& printRepeatingFlashRate(std::ostream& os, const Value& value, const ExifData*);
//! Print repeating flash count
static std::ostream& printRepeatingFlashCount(std::ostream& os, const Value& value, const ExifData*);
//! Print external flash data 1 value
static std::ostream& printExternalFlashData1(std::ostream& os, const Value& value, const ExifData*);
//! Print external flash data 1 value when using NikonFl6
static std::ostream& printExternalFlashData1Fl6(std::ostream& os, const Value& value, const ExifData*);
//! Print external flash data 1 value when using NikonFl7
static std::ostream& printExternalFlashData1Fl7(std::ostream& os, const Value& value, const ExifData*);
//! Print external flash data 1 value when using NikonFl6
static std::ostream& printExternalFlashData2Fl6(std::ostream& os, const Value& value, const ExifData*);
//! Print external flash data 2 value
static std::ostream& printExternalFlashData2(std::ostream& os, const Value& value, const ExifData*);
//! Print flash compensation value
static std::ostream& printFlashCompensation(std::ostream& os, const Value& value, const ExifData*);
//! Print flash compensation value for the Master when using NikonFl6
static std::ostream& printFlashMasterDataFl6(std::ostream& os, const Value& value, const ExifData*);
//! Print flash compensation value for the Master when using NikonFl7
static std::ostream& printFlashMasterDataFl7(std::ostream& os, const Value& value, const ExifData*);
//! Print flash group A control data value
static std::ostream& printFlashGroupAControlData(std::ostream& os, const Value& value, const ExifData* data);
//! Print flash group B/C control data value
static std::ostream& printFlashGroupBCControlData(std::ostream& os, const Value& value, const ExifData* data);
//! Print flash group A data value
static std::ostream& printFlashGroupAData(std::ostream& os, const Value& value, const ExifData*);
//! Print flash group B data value
static std::ostream& printFlashGroupBData(std::ostream& os, const Value& value, const ExifData*);
//! Print flash group C data value
static std::ostream& printFlashGroupCData(std::ostream& os, const Value& value, const ExifData*);
//! Print flash compensation value for group A when using NikonFl6
static std::ostream& printFlashGroupADataFl6(std::ostream& os, const Value& value, const ExifData*);
//! Print flash compensation value for group A when using NikonFl7
static std::ostream& printFlashGroupADataFl7(std::ostream& os, const Value& value, const ExifData*);
//! Print flash compensation value for group B when using NikonFl6
static std::ostream& printFlashGroupBDataFl6(std::ostream& os, const Value& value, const ExifData*);
//! Print flash compensation value for group B when using NikonFl7
static std::ostream& printFlashGroupBDataFl7(std::ostream& os, const Value& value, const ExifData*);
//! Print flash compensation value for group C when using NikonFl6
static std::ostream& printFlashGroupCDataFl6(std::ostream& os, const Value& value, const ExifData*);
//! Print flash compensation value for group C when using NikonFl7
static std::ostream& printFlashGroupCDataFl7(std::ostream& os, const Value& value, const ExifData*);
//! Print external flash data 3 value
static std::ostream& printExternalFlashData3(std::ostream& os, const Value& value, const ExifData*);
//! Print flash camera exposure compensation values
static std::ostream& printCameraExposureCompensation(std::ostream& os, const Value& value, const ExifData*);
//! Print external flash data 4 value
static std::ostream& printExternalFlashData4(std::ostream& os, const Value& value, const ExifData*);
//! Print flash head zoom value
static std::ostream& printFlashZoomHeadPosition(std::ostream& os, const Value& value, const ExifData*);
//! Print time zone
static std::ostream& printTimeZone(std::ostream& os, const Value& value, const ExifData*);
//! Print picture control value
@ -244,6 +268,8 @@ class Nikon3MakerNote {
static const TagInfo tagInfoFl2_[];
//! Flash Info 3 tag information
static const TagInfo tagInfoFl3_[];
//! Flash Info 6 (0106) tag information
static const TagInfo tagInfoFl6_[];
//! Flash Info 7 (0107 and 0108) tag information
static const TagInfo tagInfoFl7_[];
//! Shot Info D80 tag information

@ -106,6 +106,7 @@ constexpr GroupInfo groupInfo[] = {
{IfdId::nikonFl1Id, "Makernote", "NikonFl1", Nikon3MakerNote::tagListFl1},
{IfdId::nikonFl2Id, "Makernote", "NikonFl2", Nikon3MakerNote::tagListFl2},
{IfdId::nikonFl3Id, "Makernote", "NikonFl3", Nikon3MakerNote::tagListFl3},
{IfdId::nikonFl6Id, "Makernote", "NikonFl6", Nikon3MakerNote::tagListFl6},
{IfdId::nikonFl7Id, "Makernote", "NikonFl7", Nikon3MakerNote::tagListFl7},
{IfdId::nikonSi1Id, "Makernote", "NikonSiD80", Nikon3MakerNote::tagListSi1},
{IfdId::nikonSi2Id, "Makernote", "NikonSiD40", Nikon3MakerNote::tagListSi2},

@ -519,17 +519,49 @@ constexpr ArrayDef nikonFl3Def[] = {
{15, ttUnsignedByte, 1}, // FlashGNDistance
{16, ttUnsignedByte, 1}, // FlashColorFilter
};
//! Nikon Flash Info 7 (0107 and 0108) binary array - configuration
constexpr ArrayCfg nikonFl7Cfg = {
IfdId::nikonFl7Id, // Group for the elements
bigEndian, // Use byte order from parent
ttUndefined, // Type for array entry
notEncrypted, // Not encrypted
false, // No size element
true, // Write all tags
true, // Concatenate gaps
{0, ttUnsignedByte, 1},
//! Nikon Flash Info 6 (0106) binary array - configuration
constexpr ArrayCfg nikonFl6Cfg = {IfdId::nikonFl6Id, // Group for the elements
bigEndian, // Use byte order from parent
ttUndefined, // Type for array entry
notEncrypted, // Not encrypted
false, // No size element
true, // Write all tags
true, // Concatenate gaps
{0, ttUnsignedByte, 1}};
//! Nikon Flash Info 6 (0106) binary array - definition
constexpr ArrayDef nikonFl6Def[] = {
{0, ttUndefined, 4}, // Version
{4, ttUnsignedByte, 1}, // FlashSource
{6, ttUnsignedShort, 1}, // ExternalFlashFirmware
{8, ttUnsignedByte, 1}, // ExternalFlashData1
{9, ttUnsignedByte, 1}, // ExternalFlashData2
{10, ttUnsignedByte, 1}, // FlashCompensationMaster
{12, ttUnsignedByte, 1}, // FlashFocalLength
{13, ttUnsignedByte, 1}, // RepeatingFlashRate
{14, ttUnsignedByte, 1}, // RepeatingFlashCount
{15, ttUnsignedByte, 1}, // FlashGNDistance
{16, ttUnsignedByte, 1}, // FlashColorFilter
{17, ttUnsignedByte, 1}, // FlashGroupAControlData
{18, ttUnsignedByte, 1}, // FlashGroupBCControlData
{19, ttUnsignedByte, 1}, // FlashCompensationGroupA
{20, ttUnsignedByte, 1}, // FlashCompensationGroupB
{21, ttUnsignedByte, 1}, // FlashCompensationGroupC
{28, ttUnsignedByte, 1}, // CameraExposureCompensation
{29, ttUnsignedByte, 1}, // CameraFlashCompensation
{39, ttUnsignedByte, 1}, // FlashMasterOutput
{40, ttUnsignedByte, 1}, // FlashGroupAOutput
{41, ttUnsignedByte, 1}, // FlashGroupBOutput
{42, ttUnsignedByte, 1}, // FlashGroupCOutput
};
//! Nikon Flash Info 7 (0107 and 0108) binary array - configuration
constexpr ArrayCfg nikonFl7Cfg = {IfdId::nikonFl7Id, // Group for the elements
bigEndian, // Use byte order from parent
ttUndefined, // Type for array entry
notEncrypted, // Not encrypted
false, // No size element
true, // Write all tags
true, // Concatenate gaps
{0, ttUnsignedByte, 1}};
//! Nikon Flash Info 7 (0107 and 0108) binary array - definition
constexpr ArrayDef nikonFl7Def[] = {
{0, ttUndefined, 4}, // Version
@ -537,23 +569,34 @@ constexpr ArrayDef nikonFl7Def[] = {
{6, ttUnsignedShort, 1}, // ExternalFlashFirmware
{8, ttUnsignedByte, 1}, // ExternalFlashData1
{9, ttUnsignedByte, 1}, // ExternalFlashData2
{10, ttSignedByte, 1}, // FlashCompensation
{10, ttUnsignedByte, 1}, // FlashCompensationMaster
{12, ttUnsignedByte, 1}, // FlashFocalLength
{13, ttUnsignedByte, 1}, // RepeatingFlashRate
{14, ttUnsignedByte, 1}, // RepeatingFlashCount
{15, ttUnsignedByte, 1}, // FlashGNDistance
{16, ttUnsignedByte, 1}, // FlashColorFilter
{17, ttUnsignedByte, 1}, // FlashGroupAControlData
{18, ttUnsignedByte, 1}, // FlashGroupBCControlData
{40, ttUnsignedByte, 1}, // FlashGroupAData
{41, ttUnsignedByte, 1}, // FlashGroupBData
{42, ttUnsignedByte, 1} // FlashGroupCData
{19, ttUnsignedByte, 1}, // FlashCompensationGroupA
{20, ttUnsignedByte, 1}, // FlashCompensationGroupB
{21, ttUnsignedByte, 1}, // FlashCompensationGroupC
{22, ttUnsignedByte, 1}, // ExternalFlashData3
{27, ttUnsignedByte, 1}, // CameraFlashOutput
{28, ttUnsignedByte, 1}, // CameraExposureCompensation
{29, ttUnsignedByte, 1}, // CameraFlashCompensation
{37, ttUnsignedByte, 1}, // ExternalFlashData4
{38, ttUnsignedByte, 1}, // FlashZoomHeadPosition
{39, ttUnsignedByte, 1}, // FlashMasterOutput
{40, ttUnsignedByte, 1}, // FlashGroupAOutput
{41, ttUnsignedByte, 1}, // FlashGroupBOutput
{42, ttUnsignedByte, 1}, // FlashGroupCOutput
{67, ttUnsignedByte, 1}, // WirelessFlashData
};
//! Nikon Flash Info Data configurations and definitions
constexpr ArraySet nikonFlSet[] = {
{nikonFl1Cfg, nikonFl1Def, std::size(nikonFl1Def)},
{nikonFl2Cfg, nikonFl2Def, std::size(nikonFl2Def)},
{nikonFl3Cfg, nikonFl3Def, std::size(nikonFl3Def)},
{nikonFl1Cfg, nikonFl1Def, std::size(nikonFl1Def)}, {nikonFl2Cfg, nikonFl2Def, std::size(nikonFl2Def)},
{nikonFl3Cfg, nikonFl3Def, std::size(nikonFl3Def)}, {nikonFl6Cfg, nikonFl6Def, std::size(nikonFl6Def)},
{nikonFl7Cfg, nikonFl7Def, std::size(nikonFl7Def)},
};
@ -1307,6 +1350,7 @@ const TiffTreeTable TiffCreator::tiffTreeTable_ = {
{{Tag::root, IfdId::nikonFl1Id}, {IfdId::nikon3Id, 0x00a8}},
{{Tag::root, IfdId::nikonFl2Id}, {IfdId::nikon3Id, 0x00a8}},
{{Tag::root, IfdId::nikonFl3Id}, {IfdId::nikon3Id, 0x00a8}},
{{Tag::root, IfdId::nikonFl6Id}, {IfdId::nikon3Id, 0x00a8}},
{{Tag::root, IfdId::nikonFl7Id}, {IfdId::nikon3Id, 0x00a8}},
{{Tag::root, IfdId::panasonicId}, {IfdId::exifId, 0x927c}},
{{Tag::root, IfdId::pentaxId}, {IfdId::exifId, 0x927c}},
@ -1729,6 +1773,7 @@ const TiffGroupTable TiffCreator::tiffGroupTable_ = {
{{Tag::all, IfdId::nikonFl1Id}, newTiffBinaryElement},
{{Tag::all, IfdId::nikonFl2Id}, newTiffBinaryElement},
{{Tag::all, IfdId::nikonFl3Id}, newTiffBinaryElement},
{{Tag::all, IfdId::nikonFl6Id}, newTiffBinaryElement},
{{Tag::all, IfdId::nikonFl7Id}, newTiffBinaryElement},
// Nikon3 shot info

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

@ -123,18 +123,30 @@ Exif.Nikon3.ShutterCount Long 1 174 174
Exif.NikonFl7.Version Undefined 4 48 49 48 56 1.08
Exif.NikonFl7.FlashSource Byte 1 0 None
Exif.NikonFl7.ExternalFlashFirmware Short 1 0 n/a
Exif.NikonFl7.ExternalFlashData1 Byte 1 0 No external flash zoom override, external flash not attached
Exif.NikonFl7.ExternalFlashData2 Byte 1 0 n/a
Exif.NikonFl7.FlashCompensation SByte 1 0 0
Exif.NikonFl7.ExternalFlashData1 Byte 1 0 External flash off
Exif.NikonFl7.ExternalFlashData2 Byte 1 0 Off
Exif.NikonFl7.FlashCompensationMaster Byte 1 0 n/a
Exif.NikonFl7.FlashFocalLength Byte 1 0 n/a
Exif.NikonFl7.RepeatingFlashRate Byte 1 0 n/a
Exif.NikonFl7.RepeatingFlashCount Byte 1 0 n/a
Exif.NikonFl7.FlashGNDistance Byte 1 0 None
Exif.NikonFl7.FlashGNDistance Byte 1 0 n/a
Exif.NikonFl7.FlashColorFilter Byte 1 0 None
Exif.NikonFl7.FlashGroupAControlData Byte 1 0 Off
Exif.NikonFl7.FlashGroupBCControlData Byte 1 0 Off, Off
Exif.NikonFl7.FlashGroupAData Byte 1 0 0
Exif.NikonFl7.FlashGroupBData Byte 1 0 0
Exif.NikonFl7.FlashGroupCData Byte 1 0 0
Exif.NikonFl7.FlashCompensationGroupA Byte 1 0 n/a
Exif.NikonFl7.FlashCompensationGroupB Byte 1 0 n/a
Exif.NikonFl7.FlashCompensationGroupC Byte 1 0 n/a
Exif.NikonFl7.ExternalFlashData3 Byte 1 0 Exposure Comp.: Entire frame
Exif.NikonFl7.CameraFlashOutput Byte 1 0 0.0 EV
Exif.NikonFl7.CameraExposureCompensation Byte 1 0 0.0 EV
Exif.NikonFl7.CameraFlashCompensation Byte 1 0 0.0 EV
Exif.NikonFl7.ExternalFlashData4 Byte 1 0 Illumination Pat.: Standard
Exif.NikonFl7.FlashZoomHeadPosition Byte 1 0 n/a
Exif.NikonFl7.FlashMasterOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupAOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupBOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupCOutput Byte 1 0 n/a
Exif.NikonFl7.WirelessFlashData Byte 1 0 AWL Off
Exif.Nikon3.VariProgram Ascii 16
Exif.NikonMe.Version Undefined 4 48 49 48 49 1.01
Exif.NikonMe.MultiExposureMode Long 1 0 Off

@ -119,18 +119,30 @@ Exif.Nikon3.ShutterCount Long 1 68622 68622
Exif.NikonFl7.Version Undefined 4 48 49 48 56 1.08
Exif.NikonFl7.FlashSource Byte 1 0 None
Exif.NikonFl7.ExternalFlashFirmware Short 1 0 n/a
Exif.NikonFl7.ExternalFlashData1 Byte 1 0 No external flash zoom override, external flash not attached
Exif.NikonFl7.ExternalFlashData2 Byte 1 0 n/a
Exif.NikonFl7.FlashCompensation SByte 1 0 0
Exif.NikonFl7.ExternalFlashData1 Byte 1 0 External flash off
Exif.NikonFl7.ExternalFlashData2 Byte 1 0 Off
Exif.NikonFl7.FlashCompensationMaster Byte 1 0 n/a
Exif.NikonFl7.FlashFocalLength Byte 1 0 n/a
Exif.NikonFl7.RepeatingFlashRate Byte 1 0 n/a
Exif.NikonFl7.RepeatingFlashCount Byte 1 0 n/a
Exif.NikonFl7.FlashGNDistance Byte 1 0 None
Exif.NikonFl7.FlashGNDistance Byte 1 0 n/a
Exif.NikonFl7.FlashColorFilter Byte 1 0 None
Exif.NikonFl7.FlashGroupAControlData Byte 1 0 Off
Exif.NikonFl7.FlashGroupBCControlData Byte 1 0 Off, Off
Exif.NikonFl7.FlashGroupAData Byte 1 0 0
Exif.NikonFl7.FlashGroupBData Byte 1 0 0
Exif.NikonFl7.FlashGroupCData Byte 1 0 0
Exif.NikonFl7.FlashCompensationGroupA Byte 1 0 n/a
Exif.NikonFl7.FlashCompensationGroupB Byte 1 0 n/a
Exif.NikonFl7.FlashCompensationGroupC Byte 1 0 n/a
Exif.NikonFl7.ExternalFlashData3 Byte 1 0 Exposure Comp.: Entire frame
Exif.NikonFl7.CameraFlashOutput Byte 1 0 0.0 EV
Exif.NikonFl7.CameraExposureCompensation Byte 1 0 0.0 EV
Exif.NikonFl7.CameraFlashCompensation Byte 1 0 0.0 EV
Exif.NikonFl7.ExternalFlashData4 Byte 1 0 Illumination Pat.: Standard
Exif.NikonFl7.FlashZoomHeadPosition Byte 1 0 n/a
Exif.NikonFl7.FlashMasterOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupAOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupBOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupCOutput Byte 1 0 n/a
Exif.NikonFl7.WirelessFlashData Byte 1 0 AWL Off
Exif.Nikon3.VariProgram Ascii 16
Exif.NikonMe.Version Undefined 4 48 49 48 49 1.01
Exif.NikonMe.MultiExposureMode Long 1 0 Off

@ -119,18 +119,30 @@ Exif.Nikon3.ShutterCount Long 1 251 251
Exif.NikonFl7.Version Undefined 4 48 49 48 56 1.08
Exif.NikonFl7.FlashSource Byte 1 0 None
Exif.NikonFl7.ExternalFlashFirmware Short 1 0 n/a
Exif.NikonFl7.ExternalFlashData1 Byte 1 0 No external flash zoom override, external flash not attached
Exif.NikonFl7.ExternalFlashData2 Byte 1 0 n/a
Exif.NikonFl7.FlashCompensation SByte 1 0 0
Exif.NikonFl7.ExternalFlashData1 Byte 1 0 External flash off
Exif.NikonFl7.ExternalFlashData2 Byte 1 0 Off
Exif.NikonFl7.FlashCompensationMaster Byte 1 0 n/a
Exif.NikonFl7.FlashFocalLength Byte 1 0 n/a
Exif.NikonFl7.RepeatingFlashRate Byte 1 0 n/a
Exif.NikonFl7.RepeatingFlashCount Byte 1 0 n/a
Exif.NikonFl7.FlashGNDistance Byte 1 0 None
Exif.NikonFl7.FlashGNDistance Byte 1 0 n/a
Exif.NikonFl7.FlashColorFilter Byte 1 0 None
Exif.NikonFl7.FlashGroupAControlData Byte 1 0 Off
Exif.NikonFl7.FlashGroupBCControlData Byte 1 0 Off, Off
Exif.NikonFl7.FlashGroupAData Byte 1 0 0
Exif.NikonFl7.FlashGroupBData Byte 1 0 0
Exif.NikonFl7.FlashGroupCData Byte 1 0 0
Exif.NikonFl7.FlashCompensationGroupA Byte 1 0 n/a
Exif.NikonFl7.FlashCompensationGroupB Byte 1 0 n/a
Exif.NikonFl7.FlashCompensationGroupC Byte 1 0 n/a
Exif.NikonFl7.ExternalFlashData3 Byte 1 0 Exposure Comp.: Entire frame
Exif.NikonFl7.CameraFlashOutput Byte 1 0 0.0 EV
Exif.NikonFl7.CameraExposureCompensation Byte 1 0 0.0 EV
Exif.NikonFl7.CameraFlashCompensation Byte 1 0 0.0 EV
Exif.NikonFl7.ExternalFlashData4 Byte 1 0 Illumination Pat.: Standard
Exif.NikonFl7.FlashZoomHeadPosition Byte 1 0 n/a
Exif.NikonFl7.FlashMasterOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupAOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupBOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupCOutput Byte 1 0 n/a
Exif.NikonFl7.WirelessFlashData Byte 1 0 AWL Off
Exif.Nikon3.VariProgram Ascii 16
Exif.NikonMe.Version Undefined 4 48 49 48 49 1.01
Exif.NikonMe.MultiExposureMode Long 1 0 Off

@ -127,7 +127,7 @@ Exif.NikonFl3.ExternalFlashFlags Byte 1 0 Fired
Exif.NikonFl3.FlashFocalLength Byte 1 0 n/a
Exif.NikonFl3.RepeatingFlashRate Byte 1 0 n/a
Exif.NikonFl3.RepeatingFlashCount Byte 1 0 n/a
Exif.NikonFl3.FlashGNDistance Byte 1 0 None
Exif.NikonFl3.FlashGNDistance Byte 1 0 n/a
Exif.NikonFl3.FlashColorFilter Byte 1 0 None
Exif.Nikon3.VariProgram Ascii 16
Exif.NikonMe.Version Undefined 4 48 49 48 48 1.00

@ -127,7 +127,7 @@ Exif.NikonFl3.ExternalFlashFlags Byte 1 0 Fired
Exif.NikonFl3.FlashFocalLength Byte 1 0 n/a
Exif.NikonFl3.RepeatingFlashRate Byte 1 0 n/a
Exif.NikonFl3.RepeatingFlashCount Byte 1 0 n/a
Exif.NikonFl3.FlashGNDistance Byte 1 0 None
Exif.NikonFl3.FlashGNDistance Byte 1 0 n/a
Exif.NikonFl3.FlashColorFilter Byte 1 0 None
Exif.Nikon3.VariProgram Ascii 16
Exif.NikonMe.Version Undefined 4 48 49 48 48 1.00

@ -117,18 +117,29 @@ Exif.Nikon3.ShutterCount Long 1 900 900
Exif.NikonFl7.Version Undefined 4 48 49 48 55 1.07
Exif.NikonFl7.FlashSource Byte 1 0 None
Exif.NikonFl7.ExternalFlashFirmware Short 1 0 n/a
Exif.NikonFl7.ExternalFlashData1 Byte 1 0 No external flash zoom override, external flash not attached
Exif.NikonFl7.ExternalFlashData2 Byte 1 0 n/a
Exif.NikonFl7.FlashCompensation SByte 1 0 0
Exif.NikonFl7.ExternalFlashData1 Byte 1 0 External flash off
Exif.NikonFl7.ExternalFlashData2 Byte 1 0 Off
Exif.NikonFl7.FlashCompensationMaster Byte 1 0 n/a
Exif.NikonFl7.FlashFocalLength Byte 1 0 n/a
Exif.NikonFl7.RepeatingFlashRate Byte 1 0 n/a
Exif.NikonFl7.RepeatingFlashCount Byte 1 0 n/a
Exif.NikonFl7.FlashGNDistance Byte 1 0 None
Exif.NikonFl7.FlashGNDistance Byte 1 0 n/a
Exif.NikonFl7.FlashColorFilter Byte 1 0 None
Exif.NikonFl7.FlashGroupAControlData Byte 1 0 Off
Exif.NikonFl7.FlashGroupBCControlData Byte 1 0 Off, Off
Exif.NikonFl7.FlashGroupAData Byte 1 0 0
Exif.NikonFl7.FlashGroupBData Byte 1 0 0
Exif.NikonFl7.FlashGroupCData Byte 1 0 0
Exif.NikonFl7.FlashCompensationGroupA Byte 1 0 n/a
Exif.NikonFl7.FlashCompensationGroupB Byte 1 0 n/a
Exif.NikonFl7.FlashCompensationGroupC Byte 1 0 n/a
Exif.NikonFl7.ExternalFlashData3 Byte 1 0 Exposure Comp.: Entire frame
Exif.NikonFl7.CameraFlashOutput Byte 1 0 0.0 EV
Exif.NikonFl7.CameraExposureCompensation Byte 1 0 0.0 EV
Exif.NikonFl7.CameraFlashCompensation Byte 1 0 0.0 EV
Exif.NikonFl7.ExternalFlashData4 Byte 1 0 Illumination Pat.: Standard
Exif.NikonFl7.FlashZoomHeadPosition Byte 1 0 n/a
Exif.NikonFl7.FlashMasterOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupAOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupBOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupCOutput Byte 1 0 n/a
Exif.Nikon3.VariProgram Ascii 16
Exif.NikonMe.Version Undefined 4 48 49 48 48 1.00
Exif.NikonMe.MultiExposureMode Long 1 0 Off

@ -97,7 +97,28 @@ Exif.NikonLd3.EffectiveMaxAperture Byte 1 52 F4.5
Exif.Nikon3.RetouchHistory Short 10 0 0 0 0 0 0 0 0 0 0 None
Exif.Nikon3.ImageDataSize Long 1 6173648 6173648
Exif.Nikon3.ShutterCount Long 1 9608 9608
Exif.Nikon3.FlashInfo Undefined 49 48 49 48 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 48 49 48 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Exif.NikonFl6.Version Undefined 4 48 49 48 54 1.06
Exif.NikonFl6.FlashSource Byte 1 0 None
Exif.NikonFl6.ExternalFlashFirmware Short 1 0 n/a
Exif.NikonFl6.ExternalFlashData1 Byte 1 0 Did not fire
Exif.NikonFl6.ExternalFlashData2 Byte 1 0 External flash off
Exif.NikonFl6.FlashCompensationMaster Byte 1 0 n/a
Exif.NikonFl6.FlashFocalLength Byte 1 0 n/a
Exif.NikonFl6.RepeatingFlashRate Byte 1 0 n/a
Exif.NikonFl6.RepeatingFlashCount Byte 1 0 n/a
Exif.NikonFl6.FlashGNDistance Byte 1 0 n/a
Exif.NikonFl6.FlashColorFilter Byte 1 0 None
Exif.NikonFl6.FlashGroupAControlData Byte 1 0 Off
Exif.NikonFl6.FlashGroupBCControlData Byte 1 0 Off, Off
Exif.NikonFl6.FlashCompensationGroupA Byte 1 0 n/a
Exif.NikonFl6.FlashCompensationGroupB Byte 1 0 n/a
Exif.NikonFl6.FlashCompensationGroupC Byte 1 0 n/a
Exif.NikonFl6.CameraExposureCompensation Byte 1 0 0.0 EV
Exif.NikonFl6.CameraFlashCompensation Byte 1 0 0.0 EV
Exif.NikonFl6.FlashMasterOutput Byte 1 0 n/a
Exif.NikonFl6.FlashGroupAOutput Byte 1 0 n/a
Exif.NikonFl6.FlashGroupBOutput Byte 1 0 n/a
Exif.NikonFl6.FlashGroupCOutput Byte 1 0 n/a
Exif.Nikon3.VariProgram Ascii 16 AUTO(FLASH OFF) AUTO(FLASH OFF)
Exif.NikonMe.Version Undefined 4 48 49 48 48 1.00
Exif.NikonMe.MultiExposureMode Long 1 0 Off

@ -120,7 +120,7 @@ Exif.NikonFl3.ExternalFlashFlags Byte 1 0 Fired
Exif.NikonFl3.FlashFocalLength Byte 1 0 n/a
Exif.NikonFl3.RepeatingFlashRate Byte 1 0 n/a
Exif.NikonFl3.RepeatingFlashCount Byte 1 0 n/a
Exif.NikonFl3.FlashGNDistance Byte 1 0 None
Exif.NikonFl3.FlashGNDistance Byte 1 0 n/a
Exif.NikonFl3.FlashColorFilter Byte 1 0 None
Exif.Nikon3.VariProgram Ascii 16
Exif.NikonMe.Version Undefined 4 48 49 48 48 1.00

@ -120,7 +120,7 @@ Exif.NikonFl3.ExternalFlashFlags Byte 1 0 Fired
Exif.NikonFl3.FlashFocalLength Byte 1 0 n/a
Exif.NikonFl3.RepeatingFlashRate Byte 1 0 n/a
Exif.NikonFl3.RepeatingFlashCount Byte 1 0 n/a
Exif.NikonFl3.FlashGNDistance Byte 1 0 None
Exif.NikonFl3.FlashGNDistance Byte 1 0 n/a
Exif.NikonFl3.FlashColorFilter Byte 1 0 None
Exif.Nikon3.VariProgram Ascii 16
Exif.NikonMe.Version Undefined 4 48 49 48 48 1.00

@ -116,18 +116,30 @@ Exif.Nikon3.ShutterCount Long 1 200434 200434
Exif.NikonFl7.Version Undefined 4 48 49 48 56 1.08
Exif.NikonFl7.FlashSource Byte 1 0 None
Exif.NikonFl7.ExternalFlashFirmware Short 1 0 n/a
Exif.NikonFl7.ExternalFlashData1 Byte 1 0 No external flash zoom override, external flash not attached
Exif.NikonFl7.ExternalFlashData2 Byte 1 0 n/a
Exif.NikonFl7.FlashCompensation SByte 1 0 0
Exif.NikonFl7.ExternalFlashData1 Byte 1 0 External flash off
Exif.NikonFl7.ExternalFlashData2 Byte 1 0 Off
Exif.NikonFl7.FlashCompensationMaster Byte 1 0 n/a
Exif.NikonFl7.FlashFocalLength Byte 1 0 n/a
Exif.NikonFl7.RepeatingFlashRate Byte 1 0 n/a
Exif.NikonFl7.RepeatingFlashCount Byte 1 0 n/a
Exif.NikonFl7.FlashGNDistance Byte 1 0 None
Exif.NikonFl7.FlashGNDistance Byte 1 0 n/a
Exif.NikonFl7.FlashColorFilter Byte 1 0 None
Exif.NikonFl7.FlashGroupAControlData Byte 1 0 Off
Exif.NikonFl7.FlashGroupBCControlData Byte 1 0 Off, Off
Exif.NikonFl7.FlashGroupAData Byte 1 0 0
Exif.NikonFl7.FlashGroupBData Byte 1 0 0
Exif.NikonFl7.FlashGroupCData Byte 1 0 0
Exif.NikonFl7.FlashCompensationGroupA Byte 1 0 n/a
Exif.NikonFl7.FlashCompensationGroupB Byte 1 0 n/a
Exif.NikonFl7.FlashCompensationGroupC Byte 1 0 n/a
Exif.NikonFl7.ExternalFlashData3 Byte 1 0 Exposure Comp.: Entire frame
Exif.NikonFl7.CameraFlashOutput Byte 1 0 0.0 EV
Exif.NikonFl7.CameraExposureCompensation Byte 1 0 0.0 EV
Exif.NikonFl7.CameraFlashCompensation Byte 1 0 0.0 EV
Exif.NikonFl7.ExternalFlashData4 Byte 1 0 Illumination Pat.: Standard
Exif.NikonFl7.FlashZoomHeadPosition Byte 1 0 n/a
Exif.NikonFl7.FlashMasterOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupAOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupBOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupCOutput Byte 1 0 n/a
Exif.NikonFl7.WirelessFlashData Byte 1 0 AWL Off
Exif.Nikon3.VariProgram Ascii 16
Exif.NikonMe.Version Undefined 4 48 49 48 49 1.01
Exif.NikonMe.MultiExposureMode Long 1 0 Off

@ -118,18 +118,29 @@ Exif.Nikon3.ShutterCount Long 1 12131 12131
Exif.NikonFl7.Version Undefined 4 48 49 48 55 1.07
Exif.NikonFl7.FlashSource Byte 1 0 None
Exif.NikonFl7.ExternalFlashFirmware Short 1 0 n/a
Exif.NikonFl7.ExternalFlashData1 Byte 1 0 No external flash zoom override, external flash not attached
Exif.NikonFl7.ExternalFlashData2 Byte 1 0 n/a
Exif.NikonFl7.FlashCompensation SByte 1 0 0
Exif.NikonFl7.ExternalFlashData1 Byte 1 0 External flash off
Exif.NikonFl7.ExternalFlashData2 Byte 1 0 Off
Exif.NikonFl7.FlashCompensationMaster Byte 1 0 n/a
Exif.NikonFl7.FlashFocalLength Byte 1 0 n/a
Exif.NikonFl7.RepeatingFlashRate Byte 1 0 n/a
Exif.NikonFl7.RepeatingFlashCount Byte 1 0 n/a
Exif.NikonFl7.FlashGNDistance Byte 1 0 None
Exif.NikonFl7.FlashGNDistance Byte 1 0 n/a
Exif.NikonFl7.FlashColorFilter Byte 1 0 None
Exif.NikonFl7.FlashGroupAControlData Byte 1 0 Off
Exif.NikonFl7.FlashGroupBCControlData Byte 1 0 Off, Off
Exif.NikonFl7.FlashGroupAData Byte 1 0 0
Exif.NikonFl7.FlashGroupBData Byte 1 0 0
Exif.NikonFl7.FlashGroupCData Byte 1 0 0
Exif.NikonFl7.FlashCompensationGroupA Byte 1 0 n/a
Exif.NikonFl7.FlashCompensationGroupB Byte 1 0 n/a
Exif.NikonFl7.FlashCompensationGroupC Byte 1 0 n/a
Exif.NikonFl7.ExternalFlashData3 Byte 1 0 Exposure Comp.: Entire frame
Exif.NikonFl7.CameraFlashOutput Byte 1 0 0.0 EV
Exif.NikonFl7.CameraExposureCompensation Byte 1 0 0.0 EV
Exif.NikonFl7.CameraFlashCompensation Byte 1 0 0.0 EV
Exif.NikonFl7.ExternalFlashData4 Byte 1 0 Illumination Pat.: Standard
Exif.NikonFl7.FlashZoomHeadPosition Byte 1 0 n/a
Exif.NikonFl7.FlashMasterOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupAOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupBOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupCOutput Byte 1 0 n/a
Exif.Nikon3.VariProgram Ascii 16
Exif.NikonMe.Version Undefined 4 48 49 48 48 1.00
Exif.NikonMe.MultiExposureMode Long 1 0 Off

@ -111,7 +111,28 @@ Exif.NikonLd3.EffectiveMaxAperture Byte 1 36 F2.8
Exif.Nikon3.RawImageCenter Short 2 3008 2008 3008 2008
Exif.Nikon3.RetouchHistory Short 10 0 0 0 0 0 0 0 0 0 0 None
Exif.Nikon3.ShutterCount Long 1 4749 4749
Exif.Nikon3.FlashInfo Undefined 49 48 49 48 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 48 49 48 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Exif.NikonFl6.Version Undefined 4 48 49 48 54 1.06
Exif.NikonFl6.FlashSource Byte 1 0 None
Exif.NikonFl6.ExternalFlashFirmware Short 1 0 n/a
Exif.NikonFl6.ExternalFlashData1 Byte 1 0 Did not fire
Exif.NikonFl6.ExternalFlashData2 Byte 1 0 External flash off
Exif.NikonFl6.FlashCompensationMaster Byte 1 0 n/a
Exif.NikonFl6.FlashFocalLength Byte 1 0 n/a
Exif.NikonFl6.RepeatingFlashRate Byte 1 0 n/a
Exif.NikonFl6.RepeatingFlashCount Byte 1 0 n/a
Exif.NikonFl6.FlashGNDistance Byte 1 0 n/a
Exif.NikonFl6.FlashColorFilter Byte 1 0 None
Exif.NikonFl6.FlashGroupAControlData Byte 1 0 Off
Exif.NikonFl6.FlashGroupBCControlData Byte 1 0 Off, Off
Exif.NikonFl6.FlashCompensationGroupA Byte 1 0 n/a
Exif.NikonFl6.FlashCompensationGroupB Byte 1 0 n/a
Exif.NikonFl6.FlashCompensationGroupC Byte 1 0 n/a
Exif.NikonFl6.CameraExposureCompensation Byte 1 0 0.0 EV
Exif.NikonFl6.CameraFlashCompensation Byte 1 0 0.0 EV
Exif.NikonFl6.FlashMasterOutput Byte 1 0 n/a
Exif.NikonFl6.FlashGroupAOutput Byte 1 0 n/a
Exif.NikonFl6.FlashGroupBOutput Byte 1 0 n/a
Exif.NikonFl6.FlashGroupCOutput Byte 1 0 n/a
Exif.Nikon3.VariProgram Ascii 16 AUTO(FLASH OFF) AUTO(FLASH OFF)
Exif.NikonMe.Version Undefined 4 48 49 48 48 1.00
Exif.NikonMe.MultiExposureMode Long 1 0 Off

@ -112,18 +112,30 @@ Exif.Nikon3.ShutterCount Long 1 10419 10419
Exif.NikonFl7.Version Undefined 4 48 49 48 56 1.08
Exif.NikonFl7.FlashSource Byte 1 0 None
Exif.NikonFl7.ExternalFlashFirmware Short 1 0 n/a
Exif.NikonFl7.ExternalFlashData1 Byte 1 0 No external flash zoom override, external flash not attached
Exif.NikonFl7.ExternalFlashData2 Byte 1 0 n/a
Exif.NikonFl7.FlashCompensation SByte 1 0 0
Exif.NikonFl7.ExternalFlashData1 Byte 1 0 External flash off
Exif.NikonFl7.ExternalFlashData2 Byte 1 0 Off
Exif.NikonFl7.FlashCompensationMaster Byte 1 0 n/a
Exif.NikonFl7.FlashFocalLength Byte 1 0 n/a
Exif.NikonFl7.RepeatingFlashRate Byte 1 0 n/a
Exif.NikonFl7.RepeatingFlashCount Byte 1 0 n/a
Exif.NikonFl7.FlashGNDistance Byte 1 0 None
Exif.NikonFl7.FlashGNDistance Byte 1 0 n/a
Exif.NikonFl7.FlashColorFilter Byte 1 0 None
Exif.NikonFl7.FlashGroupAControlData Byte 1 0 Off
Exif.NikonFl7.FlashGroupBCControlData Byte 1 0 Off, Off
Exif.NikonFl7.FlashGroupAData Byte 1 0 0
Exif.NikonFl7.FlashGroupBData Byte 1 0 0
Exif.NikonFl7.FlashGroupCData Byte 1 0 0
Exif.NikonFl7.FlashCompensationGroupA Byte 1 0 n/a
Exif.NikonFl7.FlashCompensationGroupB Byte 1 0 n/a
Exif.NikonFl7.FlashCompensationGroupC Byte 1 0 n/a
Exif.NikonFl7.ExternalFlashData3 Byte 1 0 Exposure Comp.: Entire frame
Exif.NikonFl7.CameraFlashOutput Byte 1 0 0.0 EV
Exif.NikonFl7.CameraExposureCompensation Byte 1 0 0.0 EV
Exif.NikonFl7.CameraFlashCompensation Byte 1 0 0.0 EV
Exif.NikonFl7.ExternalFlashData4 Byte 1 0 Illumination Pat.: Standard
Exif.NikonFl7.FlashZoomHeadPosition Byte 1 0 n/a
Exif.NikonFl7.FlashMasterOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupAOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupBOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupCOutput Byte 1 0 n/a
Exif.NikonFl7.WirelessFlashData Byte 1 0 AWL Off
Exif.Nikon3.VariProgram Ascii 16
Exif.NikonMe.Version Undefined 4 48 49 48 48 1.00
Exif.NikonMe.MultiExposureMode Long 1 0 Off

@ -122,18 +122,30 @@ Exif.Nikon3.ShutterCount Long 1 8541 8541
Exif.NikonFl7.Version Undefined 4 48 49 48 56 1.08
Exif.NikonFl7.FlashSource Byte 1 0 None
Exif.NikonFl7.ExternalFlashFirmware Short 1 0 n/a
Exif.NikonFl7.ExternalFlashData1 Byte 1 0 No external flash zoom override, external flash not attached
Exif.NikonFl7.ExternalFlashData2 Byte 1 0 n/a
Exif.NikonFl7.FlashCompensation SByte 1 0 0
Exif.NikonFl7.ExternalFlashData1 Byte 1 0 External flash off
Exif.NikonFl7.ExternalFlashData2 Byte 1 0 Off
Exif.NikonFl7.FlashCompensationMaster Byte 1 0 n/a
Exif.NikonFl7.FlashFocalLength Byte 1 0 n/a
Exif.NikonFl7.RepeatingFlashRate Byte 1 0 n/a
Exif.NikonFl7.RepeatingFlashCount Byte 1 0 n/a
Exif.NikonFl7.FlashGNDistance Byte 1 0 None
Exif.NikonFl7.FlashGNDistance Byte 1 0 n/a
Exif.NikonFl7.FlashColorFilter Byte 1 0 None
Exif.NikonFl7.FlashGroupAControlData Byte 1 0 Off
Exif.NikonFl7.FlashGroupBCControlData Byte 1 0 Off, Off
Exif.NikonFl7.FlashGroupAData Byte 1 0 0
Exif.NikonFl7.FlashGroupBData Byte 1 0 0
Exif.NikonFl7.FlashGroupCData Byte 1 0 0
Exif.NikonFl7.FlashCompensationGroupA Byte 1 0 n/a
Exif.NikonFl7.FlashCompensationGroupB Byte 1 0 n/a
Exif.NikonFl7.FlashCompensationGroupC Byte 1 0 n/a
Exif.NikonFl7.ExternalFlashData3 Byte 1 0 Exposure Comp.: Entire frame
Exif.NikonFl7.CameraFlashOutput Byte 1 0 0.0 EV
Exif.NikonFl7.CameraExposureCompensation Byte 1 0 0.0 EV
Exif.NikonFl7.CameraFlashCompensation Byte 1 0 0.0 EV
Exif.NikonFl7.ExternalFlashData4 Byte 1 0 Illumination Pat.: Standard
Exif.NikonFl7.FlashZoomHeadPosition Byte 1 0 n/a
Exif.NikonFl7.FlashMasterOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupAOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupBOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupCOutput Byte 1 0 n/a
Exif.NikonFl7.WirelessFlashData Byte 1 0 AWL Off
Exif.Nikon3.VariProgram Ascii 16
Exif.NikonMe.Version Undefined 4 48 49 48 49 1.01
Exif.NikonMe.MultiExposureMode Long 1 0 Off

@ -111,18 +111,29 @@ Exif.Nikon3.ShutterCount Long 1 3 3
Exif.NikonFl7.Version Undefined 4 48 49 48 55 1.07
Exif.NikonFl7.FlashSource Byte 1 0 None
Exif.NikonFl7.ExternalFlashFirmware Short 1 0 n/a
Exif.NikonFl7.ExternalFlashData1 Byte 1 0 No external flash zoom override, external flash not attached
Exif.NikonFl7.ExternalFlashData2 Byte 1 0 n/a
Exif.NikonFl7.FlashCompensation SByte 1 0 0
Exif.NikonFl7.ExternalFlashData1 Byte 1 0 External flash off
Exif.NikonFl7.ExternalFlashData2 Byte 1 0 Off
Exif.NikonFl7.FlashCompensationMaster Byte 1 0 n/a
Exif.NikonFl7.FlashFocalLength Byte 1 0 n/a
Exif.NikonFl7.RepeatingFlashRate Byte 1 0 n/a
Exif.NikonFl7.RepeatingFlashCount Byte 1 0 n/a
Exif.NikonFl7.FlashGNDistance Byte 1 0 None
Exif.NikonFl7.FlashGNDistance Byte 1 0 n/a
Exif.NikonFl7.FlashColorFilter Byte 1 0 None
Exif.NikonFl7.FlashGroupAControlData Byte 1 0 Off
Exif.NikonFl7.FlashGroupBCControlData Byte 1 0 Off, Off
Exif.NikonFl7.FlashGroupAData Byte 1 0 0
Exif.NikonFl7.FlashGroupBData Byte 1 0 0
Exif.NikonFl7.FlashGroupCData Byte 1 0 0
Exif.NikonFl7.FlashCompensationGroupA Byte 1 0 n/a
Exif.NikonFl7.FlashCompensationGroupB Byte 1 0 n/a
Exif.NikonFl7.FlashCompensationGroupC Byte 1 0 n/a
Exif.NikonFl7.ExternalFlashData3 Byte 1 0 Exposure Comp.: Entire frame
Exif.NikonFl7.CameraFlashOutput Byte 1 0 0.0 EV
Exif.NikonFl7.CameraExposureCompensation Byte 1 0 0.0 EV
Exif.NikonFl7.CameraFlashCompensation Byte 1 0 0.0 EV
Exif.NikonFl7.ExternalFlashData4 Byte 1 0 Illumination Pat.: Standard
Exif.NikonFl7.FlashZoomHeadPosition Byte 1 0 n/a
Exif.NikonFl7.FlashMasterOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupAOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupBOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupCOutput Byte 1 0 n/a
Exif.NikonMe.Version Undefined 4 48 49 48 48 1.00
Exif.NikonMe.MultiExposureMode Long 1 0 Off
Exif.NikonMe.MultiExposureShots Long 1 0 0

@ -117,18 +117,29 @@ Exif.Nikon3.ShutterCount Long 1 170 170
Exif.NikonFl7.Version Undefined 4 48 49 48 55 1.07
Exif.NikonFl7.FlashSource Byte 1 0 None
Exif.NikonFl7.ExternalFlashFirmware Short 1 0 n/a
Exif.NikonFl7.ExternalFlashData1 Byte 1 0 No external flash zoom override, external flash not attached
Exif.NikonFl7.ExternalFlashData2 Byte 1 0 n/a
Exif.NikonFl7.FlashCompensation SByte 1 0 0
Exif.NikonFl7.ExternalFlashData1 Byte 1 0 External flash off
Exif.NikonFl7.ExternalFlashData2 Byte 1 0 Off
Exif.NikonFl7.FlashCompensationMaster Byte 1 0 n/a
Exif.NikonFl7.FlashFocalLength Byte 1 0 n/a
Exif.NikonFl7.RepeatingFlashRate Byte 1 0 n/a
Exif.NikonFl7.RepeatingFlashCount Byte 1 0 n/a
Exif.NikonFl7.FlashGNDistance Byte 1 0 None
Exif.NikonFl7.FlashGNDistance Byte 1 0 n/a
Exif.NikonFl7.FlashColorFilter Byte 1 0 None
Exif.NikonFl7.FlashGroupAControlData Byte 1 0 Off
Exif.NikonFl7.FlashGroupBCControlData Byte 1 0 Off, Off
Exif.NikonFl7.FlashGroupAData Byte 1 0 0
Exif.NikonFl7.FlashGroupBData Byte 1 0 0
Exif.NikonFl7.FlashGroupCData Byte 1 0 0
Exif.NikonFl7.FlashCompensationGroupA Byte 1 0 n/a
Exif.NikonFl7.FlashCompensationGroupB Byte 1 0 n/a
Exif.NikonFl7.FlashCompensationGroupC Byte 1 0 n/a
Exif.NikonFl7.ExternalFlashData3 Byte 1 0 Exposure Comp.: Entire frame
Exif.NikonFl7.CameraFlashOutput Byte 1 0 0.0 EV
Exif.NikonFl7.CameraExposureCompensation Byte 1 0 0.0 EV
Exif.NikonFl7.CameraFlashCompensation Byte 1 0 0.0 EV
Exif.NikonFl7.ExternalFlashData4 Byte 1 0 Illumination Pat.: Standard
Exif.NikonFl7.FlashZoomHeadPosition Byte 1 0 n/a
Exif.NikonFl7.FlashMasterOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupAOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupBOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupCOutput Byte 1 0 n/a
Exif.NikonMe.Version Undefined 4 48 49 48 48 1.00
Exif.NikonMe.MultiExposureMode Long 1 0 Off
Exif.NikonMe.MultiExposureShots Long 1 0 0

@ -115,7 +115,7 @@ Exif.NikonFl3.ExternalFlashFlags Byte 1 0 Fired
Exif.NikonFl3.FlashFocalLength Byte 1 0 n/a
Exif.NikonFl3.RepeatingFlashRate Byte 1 0 n/a
Exif.NikonFl3.RepeatingFlashCount Byte 1 0 n/a
Exif.NikonFl3.FlashGNDistance Byte 1 0 None
Exif.NikonFl3.FlashGNDistance Byte 1 0 n/a
Exif.NikonFl3.FlashColorFilter Byte 1 0 None
Exif.NikonMe.Version Undefined 4 48 49 48 48 1.00
Exif.NikonMe.MultiExposureMode Long 1 0 Off

@ -97,7 +97,28 @@ Exif.NikonLd3.EffectiveMaxAperture Byte 1 44 F3.6
Exif.Nikon3.RetouchHistory Short 10 0 0 0 0 0 0 0 0 0 0 None
Exif.Nikon3.ImageDataSize Long 1 6620552 6620552
Exif.Nikon3.ShutterCount Long 1 7757 7757
Exif.Nikon3.FlashInfo Undefined 49 48 49 48 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 48 49 48 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Exif.NikonFl6.Version Undefined 4 48 49 48 54 1.06
Exif.NikonFl6.FlashSource Byte 1 0 None
Exif.NikonFl6.ExternalFlashFirmware Short 1 0 n/a
Exif.NikonFl6.ExternalFlashData1 Byte 1 0 Did not fire
Exif.NikonFl6.ExternalFlashData2 Byte 1 0 External flash off
Exif.NikonFl6.FlashCompensationMaster Byte 1 0 n/a
Exif.NikonFl6.FlashFocalLength Byte 1 0 n/a
Exif.NikonFl6.RepeatingFlashRate Byte 1 0 n/a
Exif.NikonFl6.RepeatingFlashCount Byte 1 0 n/a
Exif.NikonFl6.FlashGNDistance Byte 1 0 n/a
Exif.NikonFl6.FlashColorFilter Byte 1 0 None
Exif.NikonFl6.FlashGroupAControlData Byte 1 0 Off
Exif.NikonFl6.FlashGroupBCControlData Byte 1 0 Off, Off
Exif.NikonFl6.FlashCompensationGroupA Byte 1 0 n/a
Exif.NikonFl6.FlashCompensationGroupB Byte 1 0 n/a
Exif.NikonFl6.FlashCompensationGroupC Byte 1 0 n/a
Exif.NikonFl6.CameraExposureCompensation Byte 1 0 0.0 EV
Exif.NikonFl6.CameraFlashCompensation Byte 1 0 0.0 EV
Exif.NikonFl6.FlashMasterOutput Byte 1 0 n/a
Exif.NikonFl6.FlashGroupAOutput Byte 1 0 n/a
Exif.NikonFl6.FlashGroupBOutput Byte 1 0 n/a
Exif.NikonFl6.FlashGroupCOutput Byte 1 0 n/a
Exif.Nikon3.VariProgram Ascii 16 AUTO(FLASH OFF) AUTO(FLASH OFF)
Exif.NikonMe.Version Undefined 4 48 49 48 48 1.00
Exif.NikonMe.MultiExposureMode Long 1 0 Off

@ -97,7 +97,28 @@ Exif.NikonLd3.EffectiveMaxAperture Byte 1 52 F4.5
Exif.Nikon3.RetouchHistory Short 10 0 0 0 0 0 0 0 0 0 0 None
Exif.Nikon3.ImageDataSize Long 1 6173648 6173648
Exif.Nikon3.ShutterCount Long 1 9608 9608
Exif.Nikon3.FlashInfo Undefined 49 48 49 48 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 48 49 48 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Exif.NikonFl6.Version Undefined 4 48 49 48 54 1.06
Exif.NikonFl6.FlashSource Byte 1 0 None
Exif.NikonFl6.ExternalFlashFirmware Short 1 0 n/a
Exif.NikonFl6.ExternalFlashData1 Byte 1 0 Did not fire
Exif.NikonFl6.ExternalFlashData2 Byte 1 0 External flash off
Exif.NikonFl6.FlashCompensationMaster Byte 1 0 n/a
Exif.NikonFl6.FlashFocalLength Byte 1 0 n/a
Exif.NikonFl6.RepeatingFlashRate Byte 1 0 n/a
Exif.NikonFl6.RepeatingFlashCount Byte 1 0 n/a
Exif.NikonFl6.FlashGNDistance Byte 1 0 n/a
Exif.NikonFl6.FlashColorFilter Byte 1 0 None
Exif.NikonFl6.FlashGroupAControlData Byte 1 0 Off
Exif.NikonFl6.FlashGroupBCControlData Byte 1 0 Off, Off
Exif.NikonFl6.FlashCompensationGroupA Byte 1 0 n/a
Exif.NikonFl6.FlashCompensationGroupB Byte 1 0 n/a
Exif.NikonFl6.FlashCompensationGroupC Byte 1 0 n/a
Exif.NikonFl6.CameraExposureCompensation Byte 1 0 0.0 EV
Exif.NikonFl6.CameraFlashCompensation Byte 1 0 0.0 EV
Exif.NikonFl6.FlashMasterOutput Byte 1 0 n/a
Exif.NikonFl6.FlashGroupAOutput Byte 1 0 n/a
Exif.NikonFl6.FlashGroupBOutput Byte 1 0 n/a
Exif.NikonFl6.FlashGroupCOutput Byte 1 0 n/a
Exif.Nikon3.VariProgram Ascii 16 AUTO(FLASH OFF) AUTO(FLASH OFF)
Exif.NikonMe.Version Undefined 4 48 49 48 48 1.00
Exif.NikonMe.MultiExposureMode Long 1 0 Off

@ -97,7 +97,28 @@ Exif.NikonLd3.EffectiveMaxAperture Byte 1 52 F4.5
Exif.Nikon3.RetouchHistory Short 10 0 0 0 0 0 0 0 0 0 0 None
Exif.Nikon3.ImageDataSize Long 1 6173648 6173648
Exif.Nikon3.ShutterCount Long 1 9608 9608
Exif.Nikon3.FlashInfo Undefined 49 48 49 48 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 48 49 48 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Exif.NikonFl6.Version Undefined 4 48 49 48 54 1.06
Exif.NikonFl6.FlashSource Byte 1 0 None
Exif.NikonFl6.ExternalFlashFirmware Short 1 0 n/a
Exif.NikonFl6.ExternalFlashData1 Byte 1 0 Did not fire
Exif.NikonFl6.ExternalFlashData2 Byte 1 0 External flash off
Exif.NikonFl6.FlashCompensationMaster Byte 1 0 n/a
Exif.NikonFl6.FlashFocalLength Byte 1 0 n/a
Exif.NikonFl6.RepeatingFlashRate Byte 1 0 n/a
Exif.NikonFl6.RepeatingFlashCount Byte 1 0 n/a
Exif.NikonFl6.FlashGNDistance Byte 1 0 n/a
Exif.NikonFl6.FlashColorFilter Byte 1 0 None
Exif.NikonFl6.FlashGroupAControlData Byte 1 0 Off
Exif.NikonFl6.FlashGroupBCControlData Byte 1 0 Off, Off
Exif.NikonFl6.FlashCompensationGroupA Byte 1 0 n/a
Exif.NikonFl6.FlashCompensationGroupB Byte 1 0 n/a
Exif.NikonFl6.FlashCompensationGroupC Byte 1 0 n/a
Exif.NikonFl6.CameraExposureCompensation Byte 1 0 0.0 EV
Exif.NikonFl6.CameraFlashCompensation Byte 1 0 0.0 EV
Exif.NikonFl6.FlashMasterOutput Byte 1 0 n/a
Exif.NikonFl6.FlashGroupAOutput Byte 1 0 n/a
Exif.NikonFl6.FlashGroupBOutput Byte 1 0 n/a
Exif.NikonFl6.FlashGroupCOutput Byte 1 0 n/a
Exif.Nikon3.VariProgram Ascii 16 AUTO(FLASH OFF) AUTO(FLASH OFF)
Exif.NikonMe.Version Undefined 4 48 49 48 48 1.00
Exif.NikonMe.MultiExposureMode Long 1 0 Off

@ -123,7 +123,7 @@ Exif.NikonFl3.ExternalFlashFlags Byte 1 0 Fired
Exif.NikonFl3.FlashFocalLength Byte 1 0 n/a
Exif.NikonFl3.RepeatingFlashRate Byte 1 0 n/a
Exif.NikonFl3.RepeatingFlashCount Byte 1 0 n/a
Exif.NikonFl3.FlashGNDistance Byte 1 0 None
Exif.NikonFl3.FlashGNDistance Byte 1 0 n/a
Exif.NikonFl3.FlashColorFilter Byte 1 0 None
Exif.Nikon3.VariProgram Ascii 16
Exif.NikonMe.Version Undefined 4 48 49 48 48 1.00

@ -42,7 +42,28 @@ Exif.Nikon3.FlashBracketComp Undefined 4 0 1 6 0 0.0 EV
Exif.Nikon3.FlashComp Undefined 4 0 1 6 0 0.0 EV
Exif.Nikon3.FlashDevice Ascii 20
Exif.Nikon3.FlashExposureComp Undefined 4 0 1 6 0 0.0 EV
Exif.Nikon3.FlashInfo Undefined 49 48 49 48 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 48 49 48 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Exif.NikonFl6.Version Undefined 4 48 49 48 54 1.06
Exif.NikonFl6.FlashSource Byte 1 0 None
Exif.NikonFl6.ExternalFlashFirmware Short 1 0 n/a
Exif.NikonFl6.ExternalFlashData1 Byte 1 0 Did not fire
Exif.NikonFl6.ExternalFlashData2 Byte 1 0 External flash off
Exif.NikonFl6.FlashCompensationMaster Byte 1 0 n/a
Exif.NikonFl6.FlashFocalLength Byte 1 0 n/a
Exif.NikonFl6.RepeatingFlashRate Byte 1 0 n/a
Exif.NikonFl6.RepeatingFlashCount Byte 1 0 n/a
Exif.NikonFl6.FlashGNDistance Byte 1 0 n/a
Exif.NikonFl6.FlashColorFilter Byte 1 0 None
Exif.NikonFl6.FlashGroupAControlData Byte 1 0 Off
Exif.NikonFl6.FlashGroupBCControlData Byte 1 0 Off, Off
Exif.NikonFl6.FlashCompensationGroupA Byte 1 0 n/a
Exif.NikonFl6.FlashCompensationGroupB Byte 1 0 n/a
Exif.NikonFl6.FlashCompensationGroupC Byte 1 0 n/a
Exif.NikonFl6.CameraExposureCompensation Byte 1 0 0.0 EV
Exif.NikonFl6.CameraFlashCompensation Byte 1 0 0.0 EV
Exif.NikonFl6.FlashMasterOutput Byte 1 0 n/a
Exif.NikonFl6.FlashGroupAOutput Byte 1 0 n/a
Exif.NikonFl6.FlashGroupBOutput Byte 1 0 n/a
Exif.NikonFl6.FlashGroupCOutput Byte 1 0 n/a
Exif.Nikon3.FlashMode Byte 1 0 Did not fire
Exif.Nikon3.FlashSetting Ascii 13
Exif.Nikon3.Focus Ascii 7 AF-A Automatic

@ -134,18 +134,29 @@ Exif.Nikon3.ShutterCount Long 1 1882 1882
Exif.NikonFl7.Version Undefined 4 48 49 48 55 1.07
Exif.NikonFl7.FlashSource Byte 1 0 None
Exif.NikonFl7.ExternalFlashFirmware Short 1 0 n/a
Exif.NikonFl7.ExternalFlashData1 Byte 1 0 No external flash zoom override, external flash not attached
Exif.NikonFl7.ExternalFlashData2 Byte 1 0 n/a
Exif.NikonFl7.FlashCompensation SByte 1 0 0
Exif.NikonFl7.ExternalFlashData1 Byte 1 0 External flash off
Exif.NikonFl7.ExternalFlashData2 Byte 1 0 Off
Exif.NikonFl7.FlashCompensationMaster Byte 1 0 n/a
Exif.NikonFl7.FlashFocalLength Byte 1 0 n/a
Exif.NikonFl7.RepeatingFlashRate Byte 1 0 n/a
Exif.NikonFl7.RepeatingFlashCount Byte 1 0 n/a
Exif.NikonFl7.FlashGNDistance Byte 1 0 None
Exif.NikonFl7.FlashGNDistance Byte 1 0 n/a
Exif.NikonFl7.FlashColorFilter Byte 1 0 None
Exif.NikonFl7.FlashGroupAControlData Byte 1 0 Off
Exif.NikonFl7.FlashGroupBCControlData Byte 1 0 Off, Off
Exif.NikonFl7.FlashGroupAData Byte 1 0 0
Exif.NikonFl7.FlashGroupBData Byte 1 0 0
Exif.NikonFl7.FlashGroupCData Byte 1 0 0
Exif.NikonFl7.FlashCompensationGroupA Byte 1 0 n/a
Exif.NikonFl7.FlashCompensationGroupB Byte 1 0 n/a
Exif.NikonFl7.FlashCompensationGroupC Byte 1 0 n/a
Exif.NikonFl7.ExternalFlashData3 Byte 1 0 Exposure Comp.: Entire frame
Exif.NikonFl7.CameraFlashOutput Byte 1 0 0.0 EV
Exif.NikonFl7.CameraExposureCompensation Byte 1 0 0.0 EV
Exif.NikonFl7.CameraFlashCompensation Byte 1 0 0.0 EV
Exif.NikonFl7.ExternalFlashData4 Byte 1 0 Illumination Pat.: Standard
Exif.NikonFl7.FlashZoomHeadPosition Byte 1 0 n/a
Exif.NikonFl7.FlashMasterOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupAOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupBOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupCOutput Byte 1 0 n/a
Exif.Nikon3.VariProgram Ascii 16
Exif.Nikon3.HighISONoiseReduction Short 1 0 Off
Exif.Nikon3.Preview Long 1 28682 28682

@ -97,7 +97,28 @@ Exif.NikonLd3.EffectiveMaxAperture Byte 1 44 F3.6
Exif.Nikon3.RetouchHistory Short 10 0 0 0 0 0 0 0 0 0 0 None
Exif.Nikon3.ImageDataSize Long 1 6620552 6620552
Exif.Nikon3.ShutterCount Long 1 7757 7757
Exif.Nikon3.FlashInfo Undefined 49 48 49 48 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 48 49 48 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Exif.NikonFl6.Version Undefined 4 48 49 48 54 1.06
Exif.NikonFl6.FlashSource Byte 1 0 None
Exif.NikonFl6.ExternalFlashFirmware Short 1 0 n/a
Exif.NikonFl6.ExternalFlashData1 Byte 1 0 Did not fire
Exif.NikonFl6.ExternalFlashData2 Byte 1 0 External flash off
Exif.NikonFl6.FlashCompensationMaster Byte 1 0 n/a
Exif.NikonFl6.FlashFocalLength Byte 1 0 n/a
Exif.NikonFl6.RepeatingFlashRate Byte 1 0 n/a
Exif.NikonFl6.RepeatingFlashCount Byte 1 0 n/a
Exif.NikonFl6.FlashGNDistance Byte 1 0 n/a
Exif.NikonFl6.FlashColorFilter Byte 1 0 None
Exif.NikonFl6.FlashGroupAControlData Byte 1 0 Off
Exif.NikonFl6.FlashGroupBCControlData Byte 1 0 Off, Off
Exif.NikonFl6.FlashCompensationGroupA Byte 1 0 n/a
Exif.NikonFl6.FlashCompensationGroupB Byte 1 0 n/a
Exif.NikonFl6.FlashCompensationGroupC Byte 1 0 n/a
Exif.NikonFl6.CameraExposureCompensation Byte 1 0 0.0 EV
Exif.NikonFl6.CameraFlashCompensation Byte 1 0 0.0 EV
Exif.NikonFl6.FlashMasterOutput Byte 1 0 n/a
Exif.NikonFl6.FlashGroupAOutput Byte 1 0 n/a
Exif.NikonFl6.FlashGroupBOutput Byte 1 0 n/a
Exif.NikonFl6.FlashGroupCOutput Byte 1 0 n/a
Exif.Nikon3.VariProgram Ascii 16 AUTO(FLASH OFF) AUTO(FLASH OFF)
Exif.NikonMe.Version Undefined 4 48 49 48 48 1.00
Exif.NikonMe.MultiExposureMode Long 1 0 Off

@ -122,18 +122,30 @@ Exif.Nikon3.ShutterCount Long 1 46490 46490
Exif.NikonFl7.Version Undefined 4 48 49 48 56 1.08
Exif.NikonFl7.FlashSource Byte 1 1 External
Exif.NikonFl7.ExternalFlashFirmware Short 1 2817 (2817)
Exif.NikonFl7.ExternalFlashData1 Byte 1 129 External flash zoom override, external flash attached
Exif.NikonFl7.ExternalFlashData2 Byte 1 6 Not ready
Exif.NikonFl7.FlashCompensation SByte 1 6 -1
Exif.NikonFl7.ExternalFlashData1 Byte 1 129 External flash on, External flash zoom override
Exif.NikonFl7.ExternalFlashData2 Byte 1 6 Manual
Exif.NikonFl7.FlashCompensationMaster Byte 1 6 1/2
Exif.NikonFl7.FlashFocalLength Byte 1 27 27 mm
Exif.NikonFl7.RepeatingFlashRate Byte 1 0 n/a
Exif.NikonFl7.RepeatingFlashCount Byte 1 0 n/a
Exif.NikonFl7.FlashGNDistance Byte 1 0 None
Exif.NikonFl7.FlashGNDistance Byte 1 0 n/a
Exif.NikonFl7.FlashColorFilter Byte 1 0 None
Exif.NikonFl7.FlashGroupAControlData Byte 1 0 Off
Exif.NikonFl7.FlashGroupBCControlData Byte 1 0 Off, Off
Exif.NikonFl7.FlashGroupAData Byte 1 0 0
Exif.NikonFl7.FlashGroupBData Byte 1 0 0
Exif.NikonFl7.FlashGroupCData Byte 1 0 0
Exif.NikonFl7.FlashCompensationGroupA Byte 1 0 n/a
Exif.NikonFl7.FlashCompensationGroupB Byte 1 0 n/a
Exif.NikonFl7.FlashCompensationGroupC Byte 1 0 n/a
Exif.NikonFl7.ExternalFlashData3 Byte 1 98 Exposure Comp.: Entire frame
Exif.NikonFl7.CameraFlashOutput Byte 1 6 -1.0 EV
Exif.NikonFl7.CameraExposureCompensation Byte 1 0 0.0 EV
Exif.NikonFl7.CameraFlashCompensation Byte 1 6 -1.0 EV
Exif.NikonFl7.ExternalFlashData4 Byte 1 0 Illumination Pat.: Standard
Exif.NikonFl7.FlashZoomHeadPosition Byte 1 27 27 mm
Exif.NikonFl7.FlashMasterOutput Byte 1 6 1/2
Exif.NikonFl7.FlashGroupAOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupBOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupCOutput Byte 1 0 n/a
Exif.NikonFl7.WirelessFlashData Byte 1 0 AWL Off
Exif.Nikon3.VariProgram Ascii 16
Exif.NikonMe.Version Undefined 4 48 49 48 49 1.01
Exif.NikonMe.MultiExposureMode Long 1 0 Off

@ -122,18 +122,30 @@ Exif.Nikon3.ShutterCount Long 1 5405 5405
Exif.NikonFl7.Version Undefined 4 48 49 48 56 1.08
Exif.NikonFl7.FlashSource Byte 1 1 External
Exif.NikonFl7.ExternalFlashFirmware Short 1 1281 5.01 (SB-900)
Exif.NikonFl7.ExternalFlashData1 Byte 1 1 No external flash zoom override, external flash attached
Exif.NikonFl7.ExternalFlashData2 Byte 1 128 n/a
Exif.NikonFl7.FlashCompensation SByte 1 0 0
Exif.NikonFl7.ExternalFlashData1 Byte 1 1 External flash on, No external flash zoom override
Exif.NikonFl7.ExternalFlashData2 Byte 1 128 Off
Exif.NikonFl7.FlashCompensationMaster Byte 1 0 n/a
Exif.NikonFl7.FlashFocalLength Byte 1 0 n/a
Exif.NikonFl7.RepeatingFlashRate Byte 1 255 n/a
Exif.NikonFl7.RepeatingFlashCount Byte 1 0 n/a
Exif.NikonFl7.FlashGNDistance Byte 1 0 None
Exif.NikonFl7.FlashGNDistance Byte 1 0 n/a
Exif.NikonFl7.FlashColorFilter Byte 1 0 None
Exif.NikonFl7.FlashGroupAControlData Byte 1 6 Manual
Exif.NikonFl7.FlashGroupBCControlData Byte 1 0 Off, Off
Exif.NikonFl7.FlashGroupAData Byte 1 28 4%
Exif.NikonFl7.FlashGroupBData Byte 1 0 0
Exif.NikonFl7.FlashGroupCData Byte 1 0 0
Exif.NikonFl7.FlashCompensationGroupA Byte 1 28 1/16 (-2/3 EV)
Exif.NikonFl7.FlashCompensationGroupB Byte 1 30 n/a
Exif.NikonFl7.FlashCompensationGroupC Byte 1 42 n/a
Exif.NikonFl7.ExternalFlashData3 Byte 1 96 Exposure Comp.: Entire frame
Exif.NikonFl7.CameraFlashOutput Byte 1 0 0.0 EV
Exif.NikonFl7.CameraExposureCompensation Byte 1 0 0.0 EV
Exif.NikonFl7.CameraFlashCompensation Byte 1 0 0.0 EV
Exif.NikonFl7.ExternalFlashData4 Byte 1 0 Illumination Pat.: Standard
Exif.NikonFl7.FlashZoomHeadPosition Byte 1 0 n/a
Exif.NikonFl7.FlashMasterOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupAOutput Byte 1 28 1/16 (-2/3 EV)
Exif.NikonFl7.FlashGroupBOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupCOutput Byte 1 0 n/a
Exif.NikonFl7.WirelessFlashData Byte 1 1 Optical AWL
Exif.Nikon3.VariProgram Ascii 16
Exif.NikonMe.Version Undefined 4 48 49 48 49 1.01
Exif.NikonMe.MultiExposureMode Long 1 0 Off

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

@ -101,7 +101,7 @@ Exif.NikonFl1.ExternalFlashFlags Byte 1 0 Fired
Exif.NikonFl1.FlashFocalLength Byte 1 0 n/a
Exif.NikonFl1.RepeatingFlashRate Byte 1 0 n/a
Exif.NikonFl1.RepeatingFlashCount Byte 1 0 n/a
Exif.NikonFl1.FlashGNDistance Byte 1 0 None
Exif.NikonFl1.FlashGNDistance Byte 1 0 n/a
Exif.NikonFl1.FlashGroupAControlMode Byte 1 0 Off
Exif.NikonFl1.FlashGroupBControlMode Byte 1 0 Off
Exif.Nikon3.ImageOptimization Ascii 16 NORMAL NORMAL

@ -117,18 +117,29 @@ Exif.Nikon3.ShutterCount Long 1 38551 38551
Exif.NikonFl7.Version Undefined 4 48 49 48 55 1.07
Exif.NikonFl7.FlashSource Byte 1 0 None
Exif.NikonFl7.ExternalFlashFirmware Short 1 0 n/a
Exif.NikonFl7.ExternalFlashData1 Byte 1 0 No external flash zoom override, external flash not attached
Exif.NikonFl7.ExternalFlashData2 Byte 1 0 n/a
Exif.NikonFl7.FlashCompensation SByte 1 0 0
Exif.NikonFl7.ExternalFlashData1 Byte 1 0 External flash off
Exif.NikonFl7.ExternalFlashData2 Byte 1 0 Off
Exif.NikonFl7.FlashCompensationMaster Byte 1 0 n/a
Exif.NikonFl7.FlashFocalLength Byte 1 0 n/a
Exif.NikonFl7.RepeatingFlashRate Byte 1 0 n/a
Exif.NikonFl7.RepeatingFlashCount Byte 1 0 n/a
Exif.NikonFl7.FlashGNDistance Byte 1 0 None
Exif.NikonFl7.FlashGNDistance Byte 1 0 n/a
Exif.NikonFl7.FlashColorFilter Byte 1 0 None
Exif.NikonFl7.FlashGroupAControlData Byte 1 0 Off
Exif.NikonFl7.FlashGroupBCControlData Byte 1 0 Off, Off
Exif.NikonFl7.FlashGroupAData Byte 1 0 0
Exif.NikonFl7.FlashGroupBData Byte 1 0 0
Exif.NikonFl7.FlashGroupCData Byte 1 0 0
Exif.NikonFl7.FlashCompensationGroupA Byte 1 0 n/a
Exif.NikonFl7.FlashCompensationGroupB Byte 1 0 n/a
Exif.NikonFl7.FlashCompensationGroupC Byte 1 0 n/a
Exif.NikonFl7.ExternalFlashData3 Byte 1 0 Exposure Comp.: Entire frame
Exif.NikonFl7.CameraFlashOutput Byte 1 0 0.0 EV
Exif.NikonFl7.CameraExposureCompensation Byte 1 0 0.0 EV
Exif.NikonFl7.CameraFlashCompensation Byte 1 0 0.0 EV
Exif.NikonFl7.ExternalFlashData4 Byte 1 0 Illumination Pat.: Standard
Exif.NikonFl7.FlashZoomHeadPosition Byte 1 0 n/a
Exif.NikonFl7.FlashMasterOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupAOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupBOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupCOutput Byte 1 0 n/a
Exif.Nikon3.VariProgram Ascii 16
Exif.NikonMe.Version Undefined 4 48 49 48 48 1.00
Exif.NikonMe.MultiExposureMode Long 1 0 Off

@ -977,7 +977,7 @@ File 4/16: 20040329_224245.jpg
20040329_224245.jpg Exif.NikonFl1.FlashFocalLength Byte 1 n/a
20040329_224245.jpg Exif.NikonFl1.RepeatingFlashRate Byte 1 n/a
20040329_224245.jpg Exif.NikonFl1.RepeatingFlashCount Byte 1 n/a
20040329_224245.jpg Exif.NikonFl1.FlashGNDistance Byte 1 None
20040329_224245.jpg Exif.NikonFl1.FlashGNDistance Byte 1 n/a
20040329_224245.jpg Exif.NikonFl1.FlashGroupAControlMode Byte 1 Off
20040329_224245.jpg Exif.NikonFl1.FlashGroupBControlMode Byte 1 Off
20040329_224245.jpg Exif.NikonFl1.0x0011 Byte 3 0 0 0
@ -2618,7 +2618,7 @@ Compare image data and extracted data ------------------------------------
< 20040329_224245.jpg Exif.NikonFl1.FlashFocalLength Byte 1 n/a
< 20040329_224245.jpg Exif.NikonFl1.RepeatingFlashRate Byte 1 n/a
< 20040329_224245.jpg Exif.NikonFl1.RepeatingFlashCount Byte 1 n/a
< 20040329_224245.jpg Exif.NikonFl1.FlashGNDistance Byte 1 None
< 20040329_224245.jpg Exif.NikonFl1.FlashGNDistance Byte 1 n/a
< 20040329_224245.jpg Exif.NikonFl1.FlashGroupAControlMode Byte 1 Off
< 20040329_224245.jpg Exif.NikonFl1.FlashGroupBControlMode Byte 1 Off
< 20040329_224245.jpg Exif.NikonFl1.0x0011 Byte 3 0 0 0
@ -4181,7 +4181,7 @@ Compare image data and extracted data ------------------------------------
> 20040329_224245.exv Exif.NikonFl1.FlashFocalLength Byte 1 n/a
> 20040329_224245.exv Exif.NikonFl1.RepeatingFlashRate Byte 1 n/a
> 20040329_224245.exv Exif.NikonFl1.RepeatingFlashCount Byte 1 n/a
> 20040329_224245.exv Exif.NikonFl1.FlashGNDistance Byte 1 None
> 20040329_224245.exv Exif.NikonFl1.FlashGNDistance Byte 1 n/a
> 20040329_224245.exv Exif.NikonFl1.FlashGroupAControlMode Byte 1 Off
> 20040329_224245.exv Exif.NikonFl1.FlashGroupBControlMode Byte 1 Off
> 20040329_224245.exv Exif.NikonFl1.0x0011 Byte 3 0 0 0
@ -5982,7 +5982,7 @@ Compare original and inserted image data ---------------------------------
< 20040329_224245.jpg Exif.NikonFl1.FlashFocalLength Byte 1 n/a
< 20040329_224245.jpg Exif.NikonFl1.RepeatingFlashRate Byte 1 n/a
< 20040329_224245.jpg Exif.NikonFl1.RepeatingFlashCount Byte 1 n/a
< 20040329_224245.jpg Exif.NikonFl1.FlashGNDistance Byte 1 None
< 20040329_224245.jpg Exif.NikonFl1.FlashGNDistance Byte 1 n/a
< 20040329_224245.jpg Exif.NikonFl1.FlashGroupAControlMode Byte 1 Off
< 20040329_224245.jpg Exif.NikonFl1.FlashGroupBControlMode Byte 1 Off
< 20040329_224245.jpg Exif.NikonFl1.0x0011 Byte 3 0 0 0
@ -7545,7 +7545,7 @@ Compare original and inserted image data ---------------------------------
> 20040329_224245.exv Exif.NikonFl1.FlashFocalLength Byte 1 n/a
> 20040329_224245.exv Exif.NikonFl1.RepeatingFlashRate Byte 1 n/a
> 20040329_224245.exv Exif.NikonFl1.RepeatingFlashCount Byte 1 n/a
> 20040329_224245.exv Exif.NikonFl1.FlashGNDistance Byte 1 None
> 20040329_224245.exv Exif.NikonFl1.FlashGNDistance Byte 1 n/a
> 20040329_224245.exv Exif.NikonFl1.FlashGroupAControlMode Byte 1 Off
> 20040329_224245.exv Exif.NikonFl1.FlashGroupBControlMode Byte 1 Off
> 20040329_224245.exv Exif.NikonFl1.0x0011 Byte 3 0 0 0

@ -97,7 +97,28 @@ Exif.NikonLd3.EffectiveMaxAperture Byte 1 52 F4.5
Exif.Nikon3.RetouchHistory Short 10 0 0 0 0 0 0 0 0 0 0 None
Exif.Nikon3.ImageDataSize Long 1 6173648 6173648
Exif.Nikon3.ShutterCount Long 1 9608 9608
Exif.Nikon3.FlashInfo Undefined 49 48 49 48 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 48 49 48 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Exif.NikonFl6.Version Undefined 4 48 49 48 54 1.06
Exif.NikonFl6.FlashSource Byte 1 0 None
Exif.NikonFl6.ExternalFlashFirmware Short 1 0 n/a
Exif.NikonFl6.ExternalFlashData1 Byte 1 0 Did not fire
Exif.NikonFl6.ExternalFlashData2 Byte 1 0 External flash off
Exif.NikonFl6.FlashCompensationMaster Byte 1 0 n/a
Exif.NikonFl6.FlashFocalLength Byte 1 0 n/a
Exif.NikonFl6.RepeatingFlashRate Byte 1 0 n/a
Exif.NikonFl6.RepeatingFlashCount Byte 1 0 n/a
Exif.NikonFl6.FlashGNDistance Byte 1 0 n/a
Exif.NikonFl6.FlashColorFilter Byte 1 0 None
Exif.NikonFl6.FlashGroupAControlData Byte 1 0 Off
Exif.NikonFl6.FlashGroupBCControlData Byte 1 0 Off, Off
Exif.NikonFl6.FlashCompensationGroupA Byte 1 0 n/a
Exif.NikonFl6.FlashCompensationGroupB Byte 1 0 n/a
Exif.NikonFl6.FlashCompensationGroupC Byte 1 0 n/a
Exif.NikonFl6.CameraExposureCompensation Byte 1 0 0.0 EV
Exif.NikonFl6.CameraFlashCompensation Byte 1 0 0.0 EV
Exif.NikonFl6.FlashMasterOutput Byte 1 0 n/a
Exif.NikonFl6.FlashGroupAOutput Byte 1 0 n/a
Exif.NikonFl6.FlashGroupBOutput Byte 1 0 n/a
Exif.NikonFl6.FlashGroupCOutput Byte 1 0 n/a
Exif.Nikon3.VariProgram Ascii 16 AUTO(FLASH OFF) AUTO(FLASH OFF)
Exif.NikonMe.Version Undefined 4 48 49 48 48 1.00
Exif.NikonMe.MultiExposureMode Long 1 0 Off

@ -111,18 +111,29 @@ Exif.Nikon3.ShutterCount Long 1 19903 19903
Exif.NikonFl7.Version Undefined 4 48 49 48 55 1.07
Exif.NikonFl7.FlashSource Byte 1 0 None
Exif.NikonFl7.ExternalFlashFirmware Short 1 0 n/a
Exif.NikonFl7.ExternalFlashData1 Byte 1 0 No external flash zoom override, external flash not attached
Exif.NikonFl7.ExternalFlashData2 Byte 1 0 n/a
Exif.NikonFl7.FlashCompensation SByte 1 0 0
Exif.NikonFl7.ExternalFlashData1 Byte 1 0 External flash off
Exif.NikonFl7.ExternalFlashData2 Byte 1 0 Off
Exif.NikonFl7.FlashCompensationMaster Byte 1 0 n/a
Exif.NikonFl7.FlashFocalLength Byte 1 0 n/a
Exif.NikonFl7.RepeatingFlashRate Byte 1 0 n/a
Exif.NikonFl7.RepeatingFlashCount Byte 1 0 n/a
Exif.NikonFl7.FlashGNDistance Byte 1 0 None
Exif.NikonFl7.FlashGNDistance Byte 1 0 n/a
Exif.NikonFl7.FlashColorFilter Byte 1 0 None
Exif.NikonFl7.FlashGroupAControlData Byte 1 0 Off
Exif.NikonFl7.FlashGroupBCControlData Byte 1 0 Off, Off
Exif.NikonFl7.FlashGroupAData Byte 1 0 0
Exif.NikonFl7.FlashGroupBData Byte 1 0 0
Exif.NikonFl7.FlashGroupCData Byte 1 0 0
Exif.NikonFl7.FlashCompensationGroupA Byte 1 0 n/a
Exif.NikonFl7.FlashCompensationGroupB Byte 1 0 n/a
Exif.NikonFl7.FlashCompensationGroupC Byte 1 0 n/a
Exif.NikonFl7.ExternalFlashData3 Byte 1 0 Exposure Comp.: Entire frame
Exif.NikonFl7.CameraFlashOutput Byte 1 0 0.0 EV
Exif.NikonFl7.CameraExposureCompensation Byte 1 0 0.0 EV
Exif.NikonFl7.CameraFlashCompensation Byte 1 0 0.0 EV
Exif.NikonFl7.ExternalFlashData4 Byte 1 0 Illumination Pat.: Standard
Exif.NikonFl7.FlashZoomHeadPosition Byte 1 0 n/a
Exif.NikonFl7.FlashMasterOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupAOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupBOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupCOutput Byte 1 0 n/a
Exif.Nikon3.VariProgram Ascii 16
Exif.NikonMe.Version Undefined 4 48 49 48 48 1.00
Exif.NikonMe.MultiExposureMode Long 1 0 Off

@ -43,7 +43,28 @@ Exif.Nikon3.FlashBracketComp Undefined 4 0 1 6 0 0.0 EV
Exif.Nikon3.FlashComp Undefined 4 0 1 6 0 0.0 EV
Exif.Nikon3.FlashDevice Ascii 20
Exif.Nikon3.FlashExposureComp Undefined 4 0 1 6 0 0.0 EV
Exif.Nikon3.FlashInfo Undefined 49 48 49 48 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 48 49 48 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Exif.NikonFl6.Version Undefined 4 48 49 48 54 1.06
Exif.NikonFl6.FlashSource Byte 1 0 None
Exif.NikonFl6.ExternalFlashFirmware Short 1 0 n/a
Exif.NikonFl6.ExternalFlashData1 Byte 1 0 Did not fire
Exif.NikonFl6.ExternalFlashData2 Byte 1 0 External flash off
Exif.NikonFl6.FlashCompensationMaster Byte 1 0 n/a
Exif.NikonFl6.FlashFocalLength Byte 1 0 n/a
Exif.NikonFl6.RepeatingFlashRate Byte 1 0 n/a
Exif.NikonFl6.RepeatingFlashCount Byte 1 0 n/a
Exif.NikonFl6.FlashGNDistance Byte 1 0 n/a
Exif.NikonFl6.FlashColorFilter Byte 1 0 None
Exif.NikonFl6.FlashGroupAControlData Byte 1 0 Off
Exif.NikonFl6.FlashGroupBCControlData Byte 1 0 Off, Off
Exif.NikonFl6.FlashCompensationGroupA Byte 1 0 n/a
Exif.NikonFl6.FlashCompensationGroupB Byte 1 0 n/a
Exif.NikonFl6.FlashCompensationGroupC Byte 1 0 n/a
Exif.NikonFl6.CameraExposureCompensation Byte 1 0 0.0 EV
Exif.NikonFl6.CameraFlashCompensation Byte 1 0 0.0 EV
Exif.NikonFl6.FlashMasterOutput Byte 1 0 n/a
Exif.NikonFl6.FlashGroupAOutput Byte 1 0 n/a
Exif.NikonFl6.FlashGroupBOutput Byte 1 0 n/a
Exif.NikonFl6.FlashGroupCOutput Byte 1 0 n/a
Exif.Nikon3.FlashMode Byte 1 0 Did not fire
Exif.Nikon3.FlashSetting Ascii 13
Exif.Nikon3.Focus Ascii 7 AF-A Automatic

@ -43,7 +43,28 @@ Exif.Nikon3.FlashBracketComp Undefined 4 0 1 6 0 0.0 EV
Exif.Nikon3.FlashComp Undefined 4 0 1 6 0 0.0 EV
Exif.Nikon3.FlashDevice Ascii 20
Exif.Nikon3.FlashExposureComp Undefined 4 0 1 6 0 0.0 EV
Exif.Nikon3.FlashInfo Undefined 49 48 49 48 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 48 49 48 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Exif.NikonFl6.Version Undefined 4 48 49 48 54 1.06
Exif.NikonFl6.FlashSource Byte 1 0 None
Exif.NikonFl6.ExternalFlashFirmware Short 1 0 n/a
Exif.NikonFl6.ExternalFlashData1 Byte 1 0 Did not fire
Exif.NikonFl6.ExternalFlashData2 Byte 1 0 External flash off
Exif.NikonFl6.FlashCompensationMaster Byte 1 0 n/a
Exif.NikonFl6.FlashFocalLength Byte 1 0 n/a
Exif.NikonFl6.RepeatingFlashRate Byte 1 0 n/a
Exif.NikonFl6.RepeatingFlashCount Byte 1 0 n/a
Exif.NikonFl6.FlashGNDistance Byte 1 0 n/a
Exif.NikonFl6.FlashColorFilter Byte 1 0 None
Exif.NikonFl6.FlashGroupAControlData Byte 1 0 Off
Exif.NikonFl6.FlashGroupBCControlData Byte 1 0 Off, Off
Exif.NikonFl6.FlashCompensationGroupA Byte 1 0 n/a
Exif.NikonFl6.FlashCompensationGroupB Byte 1 0 n/a
Exif.NikonFl6.FlashCompensationGroupC Byte 1 0 n/a
Exif.NikonFl6.CameraExposureCompensation Byte 1 0 0.0 EV
Exif.NikonFl6.CameraFlashCompensation Byte 1 0 0.0 EV
Exif.NikonFl6.FlashMasterOutput Byte 1 0 n/a
Exif.NikonFl6.FlashGroupAOutput Byte 1 0 n/a
Exif.NikonFl6.FlashGroupBOutput Byte 1 0 n/a
Exif.NikonFl6.FlashGroupCOutput Byte 1 0 n/a
Exif.Nikon3.FlashMode Byte 1 0 Did not fire
Exif.Nikon3.FlashSetting Ascii 13
Exif.Nikon3.Focus Ascii 7 AF-A Automatic

@ -123,7 +123,7 @@ Exif.NikonFl3.ExternalFlashFlags Byte 1 0 Fired
Exif.NikonFl3.FlashFocalLength Byte 1 0 n/a
Exif.NikonFl3.RepeatingFlashRate Byte 1 0 n/a
Exif.NikonFl3.RepeatingFlashCount Byte 1 0 n/a
Exif.NikonFl3.FlashGNDistance Byte 1 0 None
Exif.NikonFl3.FlashGNDistance Byte 1 0 n/a
Exif.NikonFl3.FlashColorFilter Byte 1 0 None
Exif.Nikon3.VariProgram Ascii 16
Exif.NikonMe.Version Undefined 4 48 49 48 48 1.00

@ -124,7 +124,7 @@ Exif.NikonFl3.ExternalFlashFlags Byte 1 0 Fired
Exif.NikonFl3.FlashFocalLength Byte 1 0 n/a
Exif.NikonFl3.RepeatingFlashRate Byte 1 0 n/a
Exif.NikonFl3.RepeatingFlashCount Byte 1 0 n/a
Exif.NikonFl3.FlashGNDistance Byte 1 0 None
Exif.NikonFl3.FlashGNDistance Byte 1 0 n/a
Exif.NikonFl3.FlashColorFilter Byte 1 0 None
Exif.NikonMe.Version Undefined 4 48 49 48 48 1.00
Exif.NikonMe.MultiExposureMode Long 1 0 Off

@ -117,18 +117,29 @@ Exif.Nikon3.ShutterCount Long 1 34651 34651
Exif.NikonFl7.Version Undefined 4 48 49 48 55 1.07
Exif.NikonFl7.FlashSource Byte 1 0 None
Exif.NikonFl7.ExternalFlashFirmware Short 1 0 n/a
Exif.NikonFl7.ExternalFlashData1 Byte 1 0 No external flash zoom override, external flash not attached
Exif.NikonFl7.ExternalFlashData2 Byte 1 0 n/a
Exif.NikonFl7.FlashCompensation SByte 1 0 0
Exif.NikonFl7.ExternalFlashData1 Byte 1 0 External flash off
Exif.NikonFl7.ExternalFlashData2 Byte 1 0 Off
Exif.NikonFl7.FlashCompensationMaster Byte 1 0 n/a
Exif.NikonFl7.FlashFocalLength Byte 1 0 n/a
Exif.NikonFl7.RepeatingFlashRate Byte 1 0 n/a
Exif.NikonFl7.RepeatingFlashCount Byte 1 0 n/a
Exif.NikonFl7.FlashGNDistance Byte 1 0 None
Exif.NikonFl7.FlashGNDistance Byte 1 0 n/a
Exif.NikonFl7.FlashColorFilter Byte 1 0 None
Exif.NikonFl7.FlashGroupAControlData Byte 1 0 Off
Exif.NikonFl7.FlashGroupBCControlData Byte 1 0 Off, Off
Exif.NikonFl7.FlashGroupAData Byte 1 0 0
Exif.NikonFl7.FlashGroupBData Byte 1 0 0
Exif.NikonFl7.FlashGroupCData Byte 1 0 0
Exif.NikonFl7.FlashCompensationGroupA Byte 1 0 n/a
Exif.NikonFl7.FlashCompensationGroupB Byte 1 0 n/a
Exif.NikonFl7.FlashCompensationGroupC Byte 1 0 n/a
Exif.NikonFl7.ExternalFlashData3 Byte 1 0 Exposure Comp.: Entire frame
Exif.NikonFl7.CameraFlashOutput Byte 1 0 0.0 EV
Exif.NikonFl7.CameraExposureCompensation Byte 1 0 0.0 EV
Exif.NikonFl7.CameraFlashCompensation Byte 1 0 0.0 EV
Exif.NikonFl7.ExternalFlashData4 Byte 1 0 Illumination Pat.: Standard
Exif.NikonFl7.FlashZoomHeadPosition Byte 1 0 n/a
Exif.NikonFl7.FlashMasterOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupAOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupBOutput Byte 1 0 n/a
Exif.NikonFl7.FlashGroupCOutput Byte 1 0 n/a
Exif.Nikon3.VariProgram Ascii 16
Exif.NikonMe.Version Undefined 4 48 49 48 48 1.00
Exif.NikonMe.MultiExposureMode Long 1 0 Off

@ -16,18 +16,30 @@ class TestNikonFl7GroupWithFlash(metaclass=CaseMeta):
stdout = ["""Exif.NikonFl7.Version Undefined 4 1.08
Exif.NikonFl7.FlashSource Byte 1 External
Exif.NikonFl7.ExternalFlashFirmware Short 1 5.01 (SB-900)
Exif.NikonFl7.ExternalFlashData1 Byte 1 No external flash zoom override, external flash attached
Exif.NikonFl7.ExternalFlashData2 Byte 1 n/a
Exif.NikonFl7.FlashCompensation SByte 1 0
Exif.NikonFl7.ExternalFlashData1 Byte 1 External flash on, No external flash zoom override
Exif.NikonFl7.ExternalFlashData2 Byte 1 Off
Exif.NikonFl7.FlashCompensationMaster Byte 1 n/a
Exif.NikonFl7.FlashFocalLength Byte 1 n/a
Exif.NikonFl7.RepeatingFlashRate Byte 1 n/a
Exif.NikonFl7.RepeatingFlashCount Byte 1 n/a
Exif.NikonFl7.FlashGNDistance Byte 1 None
Exif.NikonFl7.FlashGNDistance Byte 1 n/a
Exif.NikonFl7.FlashColorFilter Byte 1 None
Exif.NikonFl7.FlashGroupAControlData Byte 1 Manual
Exif.NikonFl7.FlashGroupBCControlData Byte 1 Off, Off
Exif.NikonFl7.FlashGroupAData Byte 1 4%
Exif.NikonFl7.FlashGroupBData Byte 1 0
Exif.NikonFl7.FlashGroupCData Byte 1 0
Exif.NikonFl7.FlashCompensationGroupA Byte 1 1/16 (-2/3 EV)
Exif.NikonFl7.FlashCompensationGroupB Byte 1 n/a
Exif.NikonFl7.FlashCompensationGroupC Byte 1 n/a
Exif.NikonFl7.ExternalFlashData3 Byte 1 Exposure Comp.: Entire frame
Exif.NikonFl7.CameraFlashOutput Byte 1 0.0 EV
Exif.NikonFl7.CameraExposureCompensation Byte 1 0.0 EV
Exif.NikonFl7.CameraFlashCompensation Byte 1 0.0 EV
Exif.NikonFl7.ExternalFlashData4 Byte 1 Illumination Pat.: Standard
Exif.NikonFl7.FlashZoomHeadPosition Byte 1 n/a
Exif.NikonFl7.FlashMasterOutput Byte 1 n/a
Exif.NikonFl7.FlashGroupAOutput Byte 1 1/16 (-2/3 EV)
Exif.NikonFl7.FlashGroupBOutput Byte 1 n/a
Exif.NikonFl7.FlashGroupCOutput Byte 1 n/a
Exif.NikonFl7.WirelessFlashData Byte 1 Optical AWL
"""]
class TestNikonFl7GroupWithoutFlash(metaclass=CaseMeta):
@ -43,16 +55,27 @@ class TestNikonFl7GroupWithoutFlash(metaclass=CaseMeta):
stdout = ["""Exif.NikonFl7.Version Undefined 4 1.07
Exif.NikonFl7.FlashSource Byte 1 None
Exif.NikonFl7.ExternalFlashFirmware Short 1 n/a
Exif.NikonFl7.ExternalFlashData1 Byte 1 No external flash zoom override, external flash not attached
Exif.NikonFl7.ExternalFlashData2 Byte 1 n/a
Exif.NikonFl7.FlashCompensation SByte 1 0
Exif.NikonFl7.ExternalFlashData1 Byte 1 External flash off
Exif.NikonFl7.ExternalFlashData2 Byte 1 Off
Exif.NikonFl7.FlashCompensationMaster Byte 1 n/a
Exif.NikonFl7.FlashFocalLength Byte 1 n/a
Exif.NikonFl7.RepeatingFlashRate Byte 1 n/a
Exif.NikonFl7.RepeatingFlashCount Byte 1 n/a
Exif.NikonFl7.FlashGNDistance Byte 1 None
Exif.NikonFl7.FlashGNDistance Byte 1 n/a
Exif.NikonFl7.FlashColorFilter Byte 1 None
Exif.NikonFl7.FlashGroupAControlData Byte 1 Off
Exif.NikonFl7.FlashGroupBCControlData Byte 1 Off, Off
Exif.NikonFl7.FlashGroupAData Byte 1 0
Exif.NikonFl7.FlashGroupBData Byte 1 0
Exif.NikonFl7.FlashGroupCData Byte 1 0
Exif.NikonFl7.FlashCompensationGroupA Byte 1 n/a
Exif.NikonFl7.FlashCompensationGroupB Byte 1 n/a
Exif.NikonFl7.FlashCompensationGroupC Byte 1 n/a
Exif.NikonFl7.ExternalFlashData3 Byte 1 Exposure Comp.: Entire frame
Exif.NikonFl7.CameraFlashOutput Byte 1 0.0 EV
Exif.NikonFl7.CameraExposureCompensation Byte 1 0.0 EV
Exif.NikonFl7.CameraFlashCompensation Byte 1 0.0 EV
Exif.NikonFl7.ExternalFlashData4 Byte 1 Illumination Pat.: Standard
Exif.NikonFl7.FlashZoomHeadPosition Byte 1 n/a
Exif.NikonFl7.FlashMasterOutput Byte 1 n/a
Exif.NikonFl7.FlashGroupAOutput Byte 1 n/a
Exif.NikonFl7.FlashGroupBOutput Byte 1 n/a
Exif.NikonFl7.FlashGroupCOutput Byte 1 n/a
"""]

@ -20,7 +20,7 @@ Exif.NikonFl3.ExternalFlashFlags Byte 1 Fired
Exif.NikonFl3.FlashFocalLength Byte 1 n/a
Exif.NikonFl3.RepeatingFlashRate Byte 1 n/a
Exif.NikonFl3.RepeatingFlashCount Byte 1 n/a
Exif.NikonFl3.FlashGNDistance Byte 1 None
Exif.NikonFl3.FlashGNDistance Byte 1 n/a
Exif.NikonFl3.FlashColorFilter Byte 1 None
""",
"""Exif.NikonFl3.Version Undefined 4 1.05
@ -30,7 +30,7 @@ Exif.NikonFl3.ExternalFlashFlags Byte 1 Fired
Exif.NikonFl3.FlashFocalLength Byte 1 n/a
Exif.NikonFl3.RepeatingFlashRate Byte 1 n/a
Exif.NikonFl3.RepeatingFlashCount Byte 1 n/a
Exif.NikonFl3.FlashGNDistance Byte 1 None
Exif.NikonFl3.FlashGNDistance Byte 1 n/a
Exif.NikonFl3.FlashColorFilter Byte 1 None
"""]
stderr = [""]*2

Loading…
Cancel
Save