Den konverterer alt til 8 bits sRGB... :( /Anders
On 2010-05-31 22:28, Klaus Post wrote: > Hej! > > Supert. > > Skal jeg lave den så den gemmer i 16 bit prophoto RGB - det er i hvert > fald det bedste format til det - eller fatter gimp det ikke alligevel > (dvs bare konverterer det til 8 bit sRGB)? > > > Regards, Klaus Post > > http://www.klauspost.com > > > > On Mon, May 31, 2010 at 22:20, Anders Kvist<[email protected]> wrote: > >> Author: akv >> Date: 2010-05-31 22:20:49 +0200 (Mon, 31 May 2010) >> New Revision: 3412 >> >> Modified: >> trunk/src/rs-external-editor.c >> Log: >> Using correct filterchain to export to gimp - copied from rs-save-dialog.c >> >> Modified: trunk/src/rs-external-editor.c >> =================================================================== >> --- trunk/src/rs-external-editor.c 2010-05-31 01:43:09 UTC (rev 3411) >> +++ trunk/src/rs-external-editor.c 2010-05-31 20:20:49 UTC (rev 3412) >> @@ -63,7 +63,7 @@ >> #ifdef WIN32 >> return FALSE; >> #else >> - RSOutput *output; >> + RSOutput *output = NULL; >> g_assert(RS_IS_PHOTO(photo)); >> >> // We need at least GIMP 2.4.0 to export photo >> @@ -80,9 +80,71 @@ >> filename = g_string_new(""); >> g_string_printf(filename, "%s/.rawstudio_%.0f.tif",g_get_tmp_dir(), >> g_random_double()*10000); >> >> + /* Setup our filter chain for saving */ >> + RSFilter *finput = rs_filter_new("RSInputImage16", NULL); >> + RSFilter *fdemosaic = rs_filter_new("RSDemosaic", finput); >> + RSFilter *flensfun = rs_filter_new("RSLensfun", fdemosaic); >> + RSFilter *ftransform_input = rs_filter_new("RSColorspaceTransform", >> flensfun); >> + RSFilter *frotate = rs_filter_new("RSRotate",ftransform_input) ; >> + RSFilter *fcrop = rs_filter_new("RSCrop", frotate); >> + RSFilter *fresample= rs_filter_new("RSResample", fcrop); >> + RSFilter *fdcp = rs_filter_new("RSDcp", fresample); >> + RSFilter *fdenoise= rs_filter_new("RSDenoise", fdcp); >> + RSFilter *ftransform_display = >> rs_filter_new("RSColorspaceTransform", fdenoise); >> + RSFilter *fend = ftransform_display; >> + >> + /* Set input profile */ >> + RSDcpFile *dcp_profile = rs_photo_get_dcp_profile(photo); >> + RSIccProfile *icc_profile = rs_photo_get_icc_profile(photo); >> + >> + if (dcp_profile != NULL) >> + { >> + g_object_set(fdcp, "profile", dcp_profile, NULL); >> + } >> + if (icc_profile != NULL) >> + { >> + RSColorSpace *icc_space = >> rs_color_space_icc_new_from_icc(icc_profile); >> + g_object_set(finput, "color-space", icc_space, NULL); >> + } >> + >> + /* Look up lens */ >> + RSMetadata *meta = rs_photo_get_metadata(photo); >> + RSLensDb *lens_db = rs_lens_db_get_default(); >> + RSLens *lens = rs_lens_db_lookup_from_metadata(lens_db, meta); >> + >> + /* Apply lens information to RSLensfun */ >> + if (lens) >> + { >> + rs_filter_set_recursive(fend, >> + "make", meta->make_ascii, >> + "model", meta->model_ascii, >> + "lens", lens, >> + "focal", (gfloat) meta->focallength, >> + "aperture", meta->aperture, >> + "tca_kr", >> photo->settings[snapshot]->tca_kr, >> + "tca_kb", >> photo->settings[snapshot]->tca_kb, >> + "vignetting", >> photo->settings[snapshot]->vignetting, >> + NULL); >> + g_object_unref(lens); >> + } >> + >> + g_object_unref(meta); >> + >> + rs_filter_set_recursive(fend, >> + "image", photo->input_response, >> + "angle", photo->angle, >> + "orientation", photo->orientation, >> + "rectangle", photo->crop, >> + "filename", photo->filename, >> + NULL); >> + >> + rs_filter_set_recursive(fend, >> + "settings", photo->settings[snapshot], >> + NULL); >> + >> output = rs_output_new("RSTifffile"); >> g_object_set(output, "filename", filename->str, NULL); >> - rs_photo_save(photo, output, -1, -1, FALSE, 1.0, snapshot); >> + rs_output_execute(output, fend); >> g_object_unref(output); >> >> message = dbus_message_new_method_call("org.gimp.GIMP.UI", >> >> >> _______________________________________________ >> Rawstudio-commit mailing list >> [email protected] >> http://rawstudio.org/cgi-bin/mailman/listinfo/rawstudio-commit >> >> > _______________________________________________ > Rawstudio-commit mailing list > [email protected] > http://rawstudio.org/cgi-bin/mailman/listinfo/rawstudio-commit > _______________________________________________ Rawstudio-commit mailing list [email protected] http://rawstudio.org/cgi-bin/mailman/listinfo/rawstudio-commit
