diff --git a/src/kdcraw_p.cpp b/src/kdcraw_p.cpp --- a/src/kdcraw_p.cpp +++ b/src/kdcraw_p.cpp @@ -371,6 +371,7 @@ raw.imgdata.params.fbdd_noiserd = lround(m_parent->m_rawDecodingSettings.NRThreshold / 100.0); break; } +#if !LIBRAW_COMPILE_CHECK_VERSION_NOTLESS(0, 19) case RawDecodingSettings::LINENR: { // (100 - 1000) => (0.001 - 0.02) conversion. @@ -387,23 +388,28 @@ raw.imgdata.params.cfa_clean = true; break; } +#endif default: // No Noise Reduction { raw.imgdata.params.threshold = 0; raw.imgdata.params.fbdd_noiserd = 0; +#if !LIBRAW_COMPILE_CHECK_VERSION_NOTLESS(0, 19) raw.imgdata.params.linenoise = 0; raw.imgdata.params.cfaline = false; raw.imgdata.params.lclean = 0; raw.imgdata.params.cclean = 0; raw.imgdata.params.cfa_clean = false; +#endif break; } } +#if !LIBRAW_COMPILE_CHECK_VERSION_NOTLESS(0, 19) // Chromatic aberration correction. raw.imgdata.params.ca_correc = m_parent->m_rawDecodingSettings.enableCACorrection; raw.imgdata.params.cared = m_parent->m_rawDecodingSettings.caMultiplier[0]; raw.imgdata.params.cablue = m_parent->m_rawDecodingSettings.caMultiplier[1]; +#endif // Exposure Correction before interpolation. raw.imgdata.params.exp_correc = m_parent->m_rawDecodingSettings.expoCorrection; @@ -457,8 +463,10 @@ raw.imgdata.params.dcb_iterations = m_parent->m_rawDecodingSettings.dcbIterations; raw.imgdata.params.dcb_enhance_fl = m_parent->m_rawDecodingSettings.dcbEnhanceFl; +#if !LIBRAW_COMPILE_CHECK_VERSION_NOTLESS(0, 19) raw.imgdata.params.eeci_refine = m_parent->m_rawDecodingSettings.eeciRefine; raw.imgdata.params.es_med_passes = m_parent->m_rawDecodingSettings.esMedPasses; +#endif //------------------------------------------------------------------------------------------- diff --git a/src/rawdecodingsettings.h b/src/rawdecodingsettings.h --- a/src/rawdecodingsettings.h +++ b/src/rawdecodingsettings.h @@ -50,8 +50,6 @@ /** RAW decoding Interpolation methods * - * NOTE: from original dcraw demosaic - * * Bilinear: use high-speed but low-quality bilinear * interpolation (default - for slow computer). In this method, * the red value of a non-red pixel is computed as the average of @@ -67,37 +65,38 @@ * AHD: use Adaptive Homogeneity-Directed interpolation. * This method selects the direction of interpolation so as to * maximize a homogeneity metric, thus typically minimizing color artifacts. + * DCB: DCB interpolation (see http://www.linuxphoto.org/html/dcb.html for details) * - * NOTE: from GPL2 demosaic pack. + * NOTE: from GPL2/GPL3 demosaic packs - will not work with libraw>=0.19 * - * DCB: DCB interpolation (see http://www.linuxphoto.org/html/dcb.html for details) * PL_AHD: modified AHD interpolation (see http://sites.google.com/site/demosaicalgorithms/modified-dcraw * for details). * AFD: demosaicing through 5 pass median filter from PerfectRaw project. * VCD: VCD interpolation. * VCD_AHD: mixed demosaicing between VCD and AHD. * LMMSE: LMMSE interpolation from PerfectRaw. - * - * NOTE: from GPL3 demosaic pack. - * * AMAZE: AMaZE interpolation and color aberration removal from RawTherapee project. + * + * NOTE: for libraw>=0.19 only + * + * DHT: DHT interpolation. + * AAHD: Enhanced Adaptative AHD interpolation. */ enum DecodingQuality { - // from original dcraw demosaic BILINEAR = 0, VNG = 1, PPG = 2, AHD = 3, - // Extended demosaicing method from GPL2 demosaic pack DCB = 4, PL_AHD = 5, AFD = 6, VCD = 7, VCD_AHD = 8, LMMSE = 9, - // Extended demosaicing methods from GPL3 demosaic pack - AMAZE = 10 + AMAZE = 10, + DHT = 11, + AAHD = 12 }; /** White balances alternatives @@ -252,13 +251,15 @@ int NRThreshold; /** Turn on chromatic aberrations correction + * @deprecated does not work with libraw>=0.19 */ bool enableCACorrection; /** Magnification factor for Red and Blue layers * - caMultiplier[0] = amount of correction on red-green axis. * - caMultiplier[1] = amount of correction on blue-yellow axis. * - Both values set to 0.0 = automatic CA correction. + * @deprecated does not work with libraw>=0.19 */ double caMultiplier[2]; @@ -325,17 +326,20 @@ /// For VCD_AHD interpolation. /** Turn on the EECI refine for VCD Demosaicing. + * @deprecated does not work with libraw>=0.19 */ bool eeciRefine; /** Use edge-sensitive median filtering for artifact supression after VCD demosaicing. * 0 : disable (default) * 1-10 : median filter passes. + * @deprecated does not work with libraw>=0.19 */ int esMedPasses; /** For IMPULSENR Noise reduction. Set the amount of Chrominance impulse denoise. - Null value disable NR. Range is between 100 and 1000. + * Null value disable NR. Range is between 100 and 1000. + * @deprecated does not work with libraw>=0.19 */ int NRChroThreshold;