A preview of the next PhotoFlow GIMP plug-in

The first great consequence of my visit at the LGM in London last Saturday, and of the discussion I had with some of the GIMP developers, is that I’ve managed to find a way to significantly improve the integration between GIMP and the PhF plug-in.

In particular, I’ve started to work on the storage of the PhF editing configuration as meta-data in the XCF files, so that it can be read back next time the plug-in is run on a layer that was already created by the plug-in itself.

This means that whenever you create a layer with the PhF plug-in, the editing steps that are involved will not get lost, and will be available next time you run the plug-in on the same layer. So the plug-in becomes effectively non-destructive even after having saved and re-opened the XCF file.

I made a short video to show how this works in practice. The code is still buggy and incomplete, but the good news is that it took me just two train trips to get there, so hopefully it will not take much long before this new functionality is fully usable…
Here is the link to the video, if you are interested: http://filebin.net/nb66tpv8ny

As usual, any feedback is greatly appreciated!

EDIT: @David_Tschumperle maybe it will be possible to implement something similar for the G’MIC plug-in? I mean storing the plug-in parameters in the layer meta-data so that they can be read back next time the plug-in is run on the same layer?

6 Likes

Andrea, you can already do this somehow with the G’MIC plug-in, by setting Output messagesVerbose (layer name).

Good to know! I will try that to see how it exactly works…

Hi David! I have tried what you propose, but it is not exactly what I am talking about in my initial post…

Imagine you run gmic on a gimp layer and save the output to a new layer. Also imagine that you have stored the gmic command in the newly created layer, as attached metadata.

Next time you run gmic on the new layer, it could detect the presence of this metadata and, instead of processing the current layer, re-apply the command stored in the metadata to the PREVIOUS layer, and replace the current layer when finished.

This way, a given gmic filter could be non-destructively tweaked even after saving and re-opening the XCF file, because the metadata gets stored in it…

I hope my reasoning is clear enough… I’m writing from my mobile and I’m quite tired after travelling back and forth through Europe :wink:

That seems to be quite complicated to implement right now, and I’m definitely not sure about the usefulness of having this in GIMP. People using GIMP know there are no adjustment layers yet, and doing a hack to somehow simulate their use doesn’t seem the right solution to me. Adjustment layers are planned in GIMP for someday, so why not waiting for it to be implemented officially, then use the provided mechanism to deal with it then ?
Or am I missing something ?

This would mean transforming your plugin into a gegl operation? I’m not sure if that will be easier…

I do not think that what I am proposing is a real hack. Also, I have the impression that the " adjustment layers" approach will not be very efficient, because many of your filters are too complex to run in realtime… that’s of course not a criticism, they simply cannot be faster.

By the way, did you already had the time to watch the video?

I understand what you mean, but as you say, this would work only for filters that are fast to compute (or for an image with a few number of processed layers), which is not the majority of G’MIC filters actually :slight_smile:
Not sure why we need this in GIMP currently though.

@Carmelo_DrRaw is this something that you want to publish a blog post about on the site as well? If you wanted to get me the text + images (or markdown file if you want), I’ll gladly get something published and pushed asap!

That would be definitely a good idea, I just need to prepare some more understandable text and an updated and improved screencast. Then we can put everything together into a nice writeup.
I can set the end of the coming weekend as a reasonable deadline…

I’m almost done with the first usable implementation of those new functionalities, and Partha is going to update his OSX and Windows installers with this new PhF plug-in version.

So hopefully people will be able to test the new version rather easily.

Thanks!

2 Likes