summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarcus Meissner <marcus@jet.franken.de>2017-09-10 17:17:47 +0200
committerMarcus Meissner <marcus@jet.franken.de>2017-09-10 17:17:47 +0200
commit291da79ac04ea36ff1432ae9fa211be7cd6535d4 (patch)
tree0e8a429e5e7bb8c7ced06e9e5c88804b4c31ecea
parent201eec399a934f50f5252798c01f833299ad28f5 (diff)
downloadlibgphoto2-291da79ac04ea36ff1432ae9fa211be7cd6535d4.tar.gz
parse EOS high iso noise reduction
-rw-r--r--camlibs/ptp2/config.c13
-rw-r--r--camlibs/ptp2/ptp-pack.c1
2 files changed, 13 insertions, 1 deletions
diff --git a/camlibs/ptp2/config.c b/camlibs/ptp2/config.c
index 54ff719c8..e37dff992 100644
--- a/camlibs/ptp2/config.c
+++ b/camlibs/ptp2/config.c
@@ -4937,6 +4937,17 @@ _put_Sony_CompressionSetting(CONFIG_PUT_ARGS) {
return GP_OK;
}
+static struct deviceproptableu16 canon_eos_highisonr[] = {
+ /* 6d values */
+ { N_("Off"), 0, 0 },
+ { N_("Low"), 1, 0 },
+ { N_("Normal"), 2, 0 },
+ { N_("High"), 3, 0 },
+ { N_("Multi-Shot"), 4, 0 },
+};
+
+GENERIC16TABLE(Canon_EOS_HighIsoNr,canon_eos_highisonr)
+
static struct deviceproptableu8 nikon_d90_highisonr[] = {
{ N_("Off"), 0, 0 },
{ N_("Low"), 1, 0 },
@@ -7253,7 +7264,7 @@ static struct submenu capture_settings_menu[] = {
{ N_("Scene Mode"), "scenemode", PTP_DPC_NIKON_SceneMode, PTP_VENDOR_NIKON, PTP_DTC_UINT8, _get_NIKON_SceneMode, _put_NIKON_SceneMode },
{ N_("Aspect Ratio"), "aspectratio", PTP_DPC_SONY_AspectRatio, PTP_VENDOR_SONY, PTP_DTC_UINT8, _get_Sony_AspectRatio, _put_Sony_AspectRatio },
{ N_("Aspect Ratio"), "aspectratio", PTP_DPC_CANON_EOS_MultiAspect, PTP_VENDOR_CANON, PTP_DTC_UINT32, _get_Canon_EOS_AspectRatio, _put_Canon_EOS_AspectRatio },
-
+ { N_("High ISO Noise Reduction"), "highisonr", PTP_DPC_CANON_EOS_HighISOSettingNoiseReduction, PTP_VENDOR_CANON, PTP_DTC_UINT16, _get_Canon_EOS_HighIsoNr, _put_Canon_EOS_HighIsoNr },
{ N_("HDR Mode"), "hdrmode", PTP_DPC_NIKON_HDRMode, PTP_VENDOR_NIKON, PTP_DTC_UINT8, _get_Nikon_OnOff_UINT8, _put_Nikon_OnOff_UINT8 },
{ N_("HDR High Dynamic"), "hdrhighdynamic", PTP_DPC_NIKON_HDRHighDynamic, PTP_VENDOR_NIKON, PTP_DTC_UINT8, _get_Nikon_HDRHighDynamic, _put_Nikon_HDRHighDynamic },
{ N_("HDR Smoothing"), "hdrsmoothing", PTP_DPC_NIKON_HDRSmoothing, PTP_VENDOR_NIKON, PTP_DTC_UINT8, _get_Nikon_HDRSmoothing, _put_Nikon_HDRSmoothing },
diff --git a/camlibs/ptp2/ptp-pack.c b/camlibs/ptp2/ptp-pack.c
index d8065a198..b539be90f 100644
--- a/camlibs/ptp2/ptp-pack.c
+++ b/camlibs/ptp2/ptp-pack.c
@@ -2199,6 +2199,7 @@ ptp_unpack_CANON_changes (PTPParams *params, unsigned char* data, int datasize,
case PTP_DPC_CANON_EOS_EVFOutputDevice:
case PTP_DPC_CANON_EOS_AutoPowerOff:
case PTP_DPC_CANON_EOS_EVFRecordStatus:
+ case PTP_DPC_CANON_EOS_HighISOSettingNoiseReduction:
case PTP_DPC_CANON_EOS_MultiAspect: /* actually a 32bit value, but lets try it for easyness */
dpd->DataType = PTP_DTC_UINT16;
break;