fix_1047_0.27
@ -135,6 +135,18 @@ namespace Exiv2 {
|
||||
{ 768, N_("Manual") }
|
||||
};
|
||||
|
||||
//! ShadowTone, tag 0x1040
|
||||
//! HighlightTone, tag 0x041
|
||||
extern const TagDetails fujiSHTone[] = {
|
||||
{ -64, N_("+4") },
|
||||
{ -48, N_("+3") },
|
||||
{ -32, N_("+2") },
|
||||
{ -16, N_("+1") },
|
||||
{ 0 , N_("0") },
|
||||
{ 16, N_("-1") },
|
||||
{ 32, N_("-2") },
|
||||
};
|
||||
|
||||
//! Continuous, tag 0x1100
|
||||
extern const TagDetails fujiContinuous[] = {
|
||||
{ 0, N_("Off") },
|
||||
@ -180,6 +192,24 @@ namespace Exiv2 {
|
||||
{ 32768, N_("Film simulation mode") }
|
||||
};
|
||||
|
||||
//! DRangePriority, tag 0x1443
|
||||
extern const TagDetails fujiDRangePriority[] = {
|
||||
{ 0, N_("Auto") },
|
||||
{ 1, N_("Fixed") }
|
||||
};
|
||||
|
||||
//! DRangePriorityAuto, tag 0x1444
|
||||
extern const TagDetails fujiDRangePriorityAuto[] = {
|
||||
{ 1, N_("Weak") },
|
||||
{ 2, N_("Strong") }
|
||||
};
|
||||
|
||||
//! DRangePriorityFixed, tag 0x1445
|
||||
extern const TagDetails fujiDRangePriorityFixed[] = {
|
||||
{ 1, N_("Weak") },
|
||||
{ 2, N_("Strong") }
|
||||
};
|
||||
|
||||
// Fujifilm MakerNote Tag Info
|
||||
const TagInfo FujiMakerNote::tagInfo_[] = {
|
||||
TagInfo(0x0000, "Version", N_("Version"),
|
||||
@ -228,6 +258,12 @@ namespace Exiv2 {
|
||||
TagInfo(0x1032, "0x1032", "0x1032",
|
||||
N_("Unknown"),
|
||||
fujiId, makerTags, unsignedShort, -1, printValue),
|
||||
TagInfo(0x1040, "ShadowTone", N_("Shadow Tone"),
|
||||
N_("Shadow tone"),
|
||||
fujiId, makerTags, signedLong, -1, EXV_PRINT_TAG(fujiSHTone)),
|
||||
TagInfo(0x1041, "HighlightTone", N_("Highlight Tone"),
|
||||
N_("Highlight tone"),
|
||||
fujiId, makerTags, signedLong, -1, EXV_PRINT_TAG(fujiSHTone)),
|
||||
TagInfo(0x1100, "Continuous", N_("Continuous"),
|
||||
N_("Continuous shooting or auto bracketing setting"),
|
||||
fujiId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiContinuous)),
|
||||
@ -273,6 +309,18 @@ namespace Exiv2 {
|
||||
TagInfo(0x1407, "MaxApertureAtMaxFocal", N_("Maximum Aperture at Maximum Focal"),
|
||||
N_("Maximum aperture at maximum focal"),
|
||||
fujiId, makerTags, unsignedRational, -1, printValue),
|
||||
TagInfo(0x1431, "Rating", N_("Rating"),
|
||||
N_("Rating"),
|
||||
fujiId, makerTags, unsignedLong, -1, printValue),
|
||||
TagInfo(0x1443, "DRangePriority", N_("D Range Priority"),
|
||||
N_("Dynamic range priority"),
|
||||
fujiId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiDRangePriority)),
|
||||
TagInfo(0x1444, "DRangePriorityFixed", N_("D Range Priority Fixed"),
|
||||
N_("Dynamic range priority fixed"),
|
||||
fujiId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiDRangePriorityFixed)),
|
||||
TagInfo(0x1445, "DRangePriorityAuto", N_("D Range Priority Auto"),
|
||||
N_("Dynamic range priority auto"),
|
||||
fujiId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiDRangePriorityAuto)),
|
||||
TagInfo(0x8000, "FileSource", N_("File Source"),
|
||||
N_("File source"),
|
||||
fujiId, makerTags, asciiString, -1, printValue),
|
||||
|
||||
BIN
test/data/FujiTagsDRangeAutoRating1.jpg
Normal file
|
After Width: | Height: | Size: 2.2 KiB |
BIN
test/data/FujiTagsDRangeStrongRating3.jpg
Normal file
|
After Width: | Height: | Size: 2.2 KiB |
BIN
test/data/FujiTagsDRangeWeakRating2.jpg
Normal file
|
After Width: | Height: | Size: 2.2 KiB |
BIN
test/data/FujiTagsSTone-2HTone4.jpg
Normal file
|
After Width: | Height: | Size: 2.2 KiB |
BIN
test/data/FujiTagsSTone0HTone0Rating4.jpg
Normal file
|
After Width: | Height: | Size: 2.2 KiB |
BIN
test/data/FujiTagsSTone1HTone-1Rating5.jpg
Normal file
|
After Width: | Height: | Size: 2.2 KiB |
BIN
test/data/FujiTagsSTone4HTone-2.jpg
Normal file
|
After Width: | Height: | Size: 2.2 KiB |
64
tests/bugfixes/github/test_fuji_tags.py
Normal file
@ -0,0 +1,64 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
import system_tests
|
||||
|
||||
class FujiTags(metaclass=system_tests.CaseMeta):
|
||||
|
||||
filesAndExpectedOutput = [
|
||||
("FujiTagsDRangeAutoRating1.jpg",
|
||||
"""Exif.Fujifilm.ShadowTone SLong 1 0
|
||||
Exif.Fujifilm.HighlightTone SLong 1 0
|
||||
Exif.Fujifilm.Rating Long 1 1
|
||||
Exif.Fujifilm.DRangePriority Short 1 Auto
|
||||
Exif.Fujifilm.DRangePriorityAuto Short 1 Weak
|
||||
""")
|
||||
,
|
||||
("FujiTagsDRangeWeakRating2.jpg",
|
||||
"""Exif.Fujifilm.ShadowTone SLong 1 0
|
||||
Exif.Fujifilm.HighlightTone SLong 1 0
|
||||
Exif.Fujifilm.Rating Long 1 2
|
||||
Exif.Fujifilm.DRangePriority Short 1 Fixed
|
||||
Exif.Fujifilm.DRangePriorityFixed Short 1 Weak
|
||||
""")
|
||||
,
|
||||
("FujiTagsDRangeStrongRating3.jpg",
|
||||
"""Exif.Fujifilm.ShadowTone SLong 1 0
|
||||
Exif.Fujifilm.HighlightTone SLong 1 0
|
||||
Exif.Fujifilm.Rating Long 1 3
|
||||
Exif.Fujifilm.DRangePriority Short 1 Fixed
|
||||
Exif.Fujifilm.DRangePriorityFixed Short 1 Strong
|
||||
"""),
|
||||
("FujiTagsSTone0HTone0Rating4.jpg",
|
||||
"""Exif.Fujifilm.ShadowTone SLong 1 0
|
||||
Exif.Fujifilm.HighlightTone SLong 1 0
|
||||
Exif.Fujifilm.Rating Long 1 4
|
||||
"""),
|
||||
("FujiTagsSTone1HTone-1Rating5.jpg",
|
||||
"""Exif.Fujifilm.ShadowTone SLong 1 +1
|
||||
Exif.Fujifilm.HighlightTone SLong 1 -1
|
||||
Exif.Fujifilm.Rating Long 1 5
|
||||
"""),
|
||||
("FujiTagsSTone4HTone-2.jpg",
|
||||
"""Exif.Fujifilm.ShadowTone SLong 1 +4
|
||||
Exif.Fujifilm.HighlightTone SLong 1 -2
|
||||
Exif.Fujifilm.Rating Long 1 0
|
||||
"""),
|
||||
("FujiTagsSTone-2HTone4.jpg",
|
||||
"""Exif.Fujifilm.ShadowTone SLong 1 -2
|
||||
Exif.Fujifilm.HighlightTone SLong 1 +4
|
||||
Exif.Fujifilm.Rating Long 1 0
|
||||
""")
|
||||
]
|
||||
|
||||
tags = ["Exif.Fujifilm.ShadowTone",
|
||||
"Exif.Fujifilm.HighlightTone",
|
||||
"Exif.Fujifilm.Rating",
|
||||
"Exif.Fujifilm.DRangePriority",
|
||||
"Exif.Fujifilm.DRangePriorityAuto",
|
||||
"Exif.Fujifilm.DRangePriorityFixed"]
|
||||
|
||||
tagcmd = "$exiv2 -K " + " -K ".join(tags)
|
||||
commands = ["$tagcmd $data_path/" + f for f, _ in filesAndExpectedOutput]
|
||||
stdout = [e for _, e in filesAndExpectedOutput]
|
||||
stderr = [""] * len(filesAndExpectedOutput)
|
||||
retval = [0] * len(filesAndExpectedOutput)
|
||||
@ -35,6 +35,8 @@ Exif.Fujifilm.Macro Short 1 Off
|
||||
Exif.Fujifilm.FocusMode Short 1 Auto
|
||||
Exif.Fujifilm.SlowSync Short 1 Off
|
||||
Exif.Fujifilm.PictureMode Short 1 Program AE
|
||||
Exif.Fujifilm.ShadowTone SLong 1 0
|
||||
Exif.Fujifilm.HighlightTone SLong 1 0
|
||||
Exif.Fujifilm.Continuous Short 1 Off
|
||||
Exif.Fujifilm.SequenceNumber Short 1 0
|
||||
Exif.Fujifilm.BlurWarning Short 1 Off
|
||||
@ -43,6 +45,7 @@ Exif.Fujifilm.ExposureWarning Short 1 Off
|
||||
Exif.Fujifilm.DynamicRange Short 1 Standard
|
||||
Exif.Fujifilm.FilmMode Short 1 F0/Standard (Provia)
|
||||
Exif.Fujifilm.DynamicRangeSetting Short 1 Auto (100-400%)
|
||||
Exif.Fujifilm.Rating Long 1 0
|
||||
""",
|
||||
"""Exif.Fujifilm.Version Undefined 4 48 49 51 48
|
||||
Exif.Fujifilm.SerialNumber Ascii 48 FFDT22794526 593332303134151113535030217060
|
||||
@ -56,6 +59,8 @@ Exif.Fujifilm.Macro Short 1 Off
|
||||
Exif.Fujifilm.FocusMode Short 1 Auto
|
||||
Exif.Fujifilm.SlowSync Short 1 Off
|
||||
Exif.Fujifilm.PictureMode Short 1 Program AE
|
||||
Exif.Fujifilm.ShadowTone SLong 1 0
|
||||
Exif.Fujifilm.HighlightTone SLong 1 0
|
||||
Exif.Fujifilm.Continuous Short 1 Off
|
||||
Exif.Fujifilm.SequenceNumber Short 1 0
|
||||
Exif.Fujifilm.BlurWarning Short 1 Off
|
||||
@ -64,6 +69,7 @@ Exif.Fujifilm.ExposureWarning Short 1 Off
|
||||
Exif.Fujifilm.DynamicRange Short 1 Standard
|
||||
Exif.Fujifilm.FilmMode Short 1 F2/Fujichrome (Velvia)
|
||||
Exif.Fujifilm.DynamicRangeSetting Short 1 Auto (100-400%)
|
||||
Exif.Fujifilm.Rating Long 1 0
|
||||
""", #b
|
||||
"""Exif.Fujifilm.Version Undefined 4 48 49 51 48
|
||||
Exif.Fujifilm.SerialNumber Ascii 48 FFDT22794526 593332303134151113535030217060
|
||||
@ -77,6 +83,8 @@ Exif.Fujifilm.Macro Short 1 Off
|
||||
Exif.Fujifilm.FocusMode Short 1 Auto
|
||||
Exif.Fujifilm.SlowSync Short 1 Off
|
||||
Exif.Fujifilm.PictureMode Short 1 Program AE
|
||||
Exif.Fujifilm.ShadowTone SLong 1 0
|
||||
Exif.Fujifilm.HighlightTone SLong 1 0
|
||||
Exif.Fujifilm.Continuous Short 1 Off
|
||||
Exif.Fujifilm.SequenceNumber Short 1 0
|
||||
Exif.Fujifilm.BlurWarning Short 1 Off
|
||||
@ -85,6 +93,7 @@ Exif.Fujifilm.ExposureWarning Short 1 Off
|
||||
Exif.Fujifilm.DynamicRange Short 1 Standard
|
||||
Exif.Fujifilm.FilmMode Short 1 F1b/Studio Portrait Smooth Skin Tone (Astia)
|
||||
Exif.Fujifilm.DynamicRangeSetting Short 1 Auto (100-400%)
|
||||
Exif.Fujifilm.Rating Long 1 0
|
||||
""",
|
||||
"""Exif.Fujifilm.Version Undefined 4 48 49 51 48
|
||||
Exif.Fujifilm.SerialNumber Ascii 48 FFDT22794526 593332303134151113535030217060
|
||||
@ -98,6 +107,8 @@ Exif.Fujifilm.Macro Short 1 Off
|
||||
Exif.Fujifilm.FocusMode Short 1 Auto
|
||||
Exif.Fujifilm.SlowSync Short 1 Off
|
||||
Exif.Fujifilm.PictureMode Short 1 Program AE
|
||||
Exif.Fujifilm.ShadowTone SLong 1 0
|
||||
Exif.Fujifilm.HighlightTone SLong 1 0
|
||||
Exif.Fujifilm.Continuous Short 1 Off
|
||||
Exif.Fujifilm.SequenceNumber Short 1 0
|
||||
Exif.Fujifilm.BlurWarning Short 1 Off
|
||||
@ -106,6 +117,7 @@ Exif.Fujifilm.ExposureWarning Short 1 Off
|
||||
Exif.Fujifilm.DynamicRange Short 1 Standard
|
||||
Exif.Fujifilm.FilmMode Short 1 Classic Chrome
|
||||
Exif.Fujifilm.DynamicRangeSetting Short 1 Auto (100-400%)
|
||||
Exif.Fujifilm.Rating Long 1 0
|
||||
""",
|
||||
"""Exif.Fujifilm.Version Undefined 4 48 49 51 48
|
||||
Exif.Fujifilm.SerialNumber Ascii 48 FFDT22794526 593332303134151113535030217060
|
||||
@ -119,6 +131,8 @@ Exif.Fujifilm.Macro Short 1 Off
|
||||
Exif.Fujifilm.FocusMode Short 1 Auto
|
||||
Exif.Fujifilm.SlowSync Short 1 Off
|
||||
Exif.Fujifilm.PictureMode Short 1 Program AE
|
||||
Exif.Fujifilm.ShadowTone SLong 1 0
|
||||
Exif.Fujifilm.HighlightTone SLong 1 0
|
||||
Exif.Fujifilm.Continuous Short 1 Off
|
||||
Exif.Fujifilm.SequenceNumber Short 1 0
|
||||
Exif.Fujifilm.BlurWarning Short 1 Off
|
||||
@ -127,6 +141,7 @@ Exif.Fujifilm.ExposureWarning Short 1 Off
|
||||
Exif.Fujifilm.DynamicRange Short 1 Standard
|
||||
Exif.Fujifilm.FilmMode Short 1 Pro Neg. Hi
|
||||
Exif.Fujifilm.DynamicRangeSetting Short 1 Auto (100-400%)
|
||||
Exif.Fujifilm.Rating Long 1 0
|
||||
""",
|
||||
"""Exif.Fujifilm.Version Undefined 4 48 49 51 48
|
||||
Exif.Fujifilm.SerialNumber Ascii 48 FFDT22794526 593332303134151113535030217060
|
||||
@ -140,6 +155,8 @@ Exif.Fujifilm.Macro Short 1 Off
|
||||
Exif.Fujifilm.FocusMode Short 1 Manual
|
||||
Exif.Fujifilm.SlowSync Short 1 Off
|
||||
Exif.Fujifilm.PictureMode Short 1 Program AE
|
||||
Exif.Fujifilm.ShadowTone SLong 1 0
|
||||
Exif.Fujifilm.HighlightTone SLong 1 0
|
||||
Exif.Fujifilm.Continuous Short 1 Off
|
||||
Exif.Fujifilm.SequenceNumber Short 1 0
|
||||
Exif.Fujifilm.BlurWarning Short 1 On
|
||||
@ -147,6 +164,7 @@ Exif.Fujifilm.FocusWarning Short 1 Off
|
||||
Exif.Fujifilm.ExposureWarning Short 1 On
|
||||
Exif.Fujifilm.DynamicRange Short 1 Standard
|
||||
Exif.Fujifilm.DynamicRangeSetting Short 1 Auto (100-400%)
|
||||
Exif.Fujifilm.Rating Long 1 0
|
||||
""",
|
||||
"""Exif.Fujifilm.Version Undefined 4 48 49 51 48
|
||||
Exif.Fujifilm.SerialNumber Ascii 48 FFDT22794526 593332303134151113535030217060
|
||||
@ -160,6 +178,8 @@ Exif.Fujifilm.Macro Short 1 Off
|
||||
Exif.Fujifilm.FocusMode Short 1 Manual
|
||||
Exif.Fujifilm.SlowSync Short 1 Off
|
||||
Exif.Fujifilm.PictureMode Short 1 Program AE
|
||||
Exif.Fujifilm.ShadowTone SLong 1 0
|
||||
Exif.Fujifilm.HighlightTone SLong 1 0
|
||||
Exif.Fujifilm.Continuous Short 1 Off
|
||||
Exif.Fujifilm.SequenceNumber Short 1 0
|
||||
Exif.Fujifilm.BlurWarning Short 1 On
|
||||
@ -167,6 +187,7 @@ Exif.Fujifilm.FocusWarning Short 1 Off
|
||||
Exif.Fujifilm.ExposureWarning Short 1 On
|
||||
Exif.Fujifilm.DynamicRange Short 1 Standard
|
||||
Exif.Fujifilm.DynamicRangeSetting Short 1 Auto (100-400%)
|
||||
Exif.Fujifilm.Rating Long 1 0
|
||||
""",
|
||||
"""Exif.Fujifilm.Version Undefined 4 48 49 51 48
|
||||
Exif.Fujifilm.SerialNumber Ascii 48 FFDT22794526 593332303134151113535030217060
|
||||
@ -180,6 +201,8 @@ Exif.Fujifilm.Macro Short 1 Off
|
||||
Exif.Fujifilm.FocusMode Short 1 Manual
|
||||
Exif.Fujifilm.SlowSync Short 1 Off
|
||||
Exif.Fujifilm.PictureMode Short 1 Shutter speed priority AE
|
||||
Exif.Fujifilm.ShadowTone SLong 1 0
|
||||
Exif.Fujifilm.HighlightTone SLong 1 0
|
||||
Exif.Fujifilm.Continuous Short 1 Off
|
||||
Exif.Fujifilm.SequenceNumber Short 1 0
|
||||
Exif.Fujifilm.BlurWarning Short 1 Off
|
||||
@ -187,6 +210,7 @@ Exif.Fujifilm.FocusWarning Short 1 Off
|
||||
Exif.Fujifilm.ExposureWarning Short 1 On
|
||||
Exif.Fujifilm.DynamicRange Short 1 Standard
|
||||
Exif.Fujifilm.DynamicRangeSetting Short 1 Auto (100-400%)
|
||||
Exif.Fujifilm.Rating Long 1 0
|
||||
""",
|
||||
"""Exif.Fujifilm.Version Undefined 4 48 49 51 48
|
||||
Exif.Fujifilm.SerialNumber Ascii 48 FFDT22794526 593332303134151113535030217060
|
||||
@ -200,6 +224,8 @@ Exif.Fujifilm.Macro Short 1 Off
|
||||
Exif.Fujifilm.FocusMode Short 1 Manual
|
||||
Exif.Fujifilm.SlowSync Short 1 Off
|
||||
Exif.Fujifilm.PictureMode Short 1 Shutter speed priority AE
|
||||
Exif.Fujifilm.ShadowTone SLong 1 0
|
||||
Exif.Fujifilm.HighlightTone SLong 1 0
|
||||
Exif.Fujifilm.Continuous Short 1 Off
|
||||
Exif.Fujifilm.SequenceNumber Short 1 0
|
||||
Exif.Fujifilm.BlurWarning Short 1 Off
|
||||
@ -207,6 +233,7 @@ Exif.Fujifilm.FocusWarning Short 1 Off
|
||||
Exif.Fujifilm.ExposureWarning Short 1 On
|
||||
Exif.Fujifilm.DynamicRange Short 1 Standard
|
||||
Exif.Fujifilm.DynamicRangeSetting Short 1 Auto (100-400%)
|
||||
Exif.Fujifilm.Rating Long 1 0
|
||||
""",
|
||||
"""Exif.Fujifilm.Version Undefined 4 48 49 51 48
|
||||
Exif.Fujifilm.SerialNumber Ascii 48 FFDT22794526 593332303134151113535030217060
|
||||
@ -220,6 +247,8 @@ Exif.Fujifilm.Macro Short 1 Off
|
||||
Exif.Fujifilm.FocusMode Short 1 Manual
|
||||
Exif.Fujifilm.SlowSync Short 1 Off
|
||||
Exif.Fujifilm.PictureMode Short 1 Shutter speed priority AE
|
||||
Exif.Fujifilm.ShadowTone SLong 1 0
|
||||
Exif.Fujifilm.HighlightTone SLong 1 0
|
||||
Exif.Fujifilm.Continuous Short 1 Off
|
||||
Exif.Fujifilm.SequenceNumber Short 1 0
|
||||
Exif.Fujifilm.BlurWarning Short 1 Off
|
||||
@ -227,6 +256,7 @@ Exif.Fujifilm.FocusWarning Short 1 Off
|
||||
Exif.Fujifilm.ExposureWarning Short 1 On
|
||||
Exif.Fujifilm.DynamicRange Short 1 Standard
|
||||
Exif.Fujifilm.DynamicRangeSetting Short 1 Auto (100-400%)
|
||||
Exif.Fujifilm.Rating Long 1 0
|
||||
"""
|
||||
]
|
||||
stderr = [""] * 10
|
||||
|
||||