darktable
darktable copied to clipboard
po/lt composite - add support for creating composite image from lighttable
Not an easy one, but seems be working.
@elstoc : Feel free to test.
NOTE: This PR changes the database structure, please backup before testing.
It's not clear how this is supposed to work. If I select a single unprocessed CR2 image and click on "create composite" then "working" appears on the image, darktable becomes unresponsive and I get a bunch of messages on my terminal...
55.4824 cannot get iop-order for overlay instance 1
55.6188 cannot get iop-order for overlay instance 1
67.0191 cannot get iop-order for overlay instance 1
78.4674 cannot get iop-order for overlay instance 1
This issue persists on restart, and I have to discard history to make it go away.
I can't seem to make it work for selecting 2 images either.
TBH drag-and-drop from the filmstrip also makes my PC scream and doesn't seem to accomplish anything (this is the first time I've even tried this module)
It's not clear how this is supposed to work. If I select a single unprocessed CR2 image and click on "create composite" then "working" appears on the image, darktable becomes unresponsive and I get a bunch of messages on my terminal...
Strange it works for me:
- Select a single image
- Delete history
- Click
create composite
TBH drag-and-drop from the filmstrip also makes my PC scream and doesn't seem to accomplish anything (this is the first time I've even tried this module)
This is it then, strange since many people have been using it with success! No idea at the moment.
It seems to work better in current master. I'm not entirely comfortable with the sheer amount of code it takes to do this change, and wondering if it was a good idea after all.
Perhaps an improved darkroom method of selecting the composite might be better.
Even an option to have the filmstrip temporarily displayed when the module is active might work, or just a "show filmstrip" option for d&d. Would also be nice to be able to choose from the history stack of the selected image especially if it's subsequently updated?
@elstoc : I have fixed an issue not always reproducible, should be working better now.
Let's see if some other people feel like this is a good addition or not. In any case there is some commits in this PR that I'd like to integrate.
Yeah it's less breaky now for that simple use case. I'm still really unsure of the expected UX though. For example I selected three images and chose the composite option. Again my PC screamed at me (fan noise), a bunch of images went white in the lighttable and displayed "working" on them without every really seeming to resolve into an image. I get the feeling it did some sort of duplication? But again, the only thing I could do to unbreak was to discard history on everything and start again.
I managed to briefly get into one of the images and saw five (I think) instances of the composite module, some of which had an image, and some of which did not.
I was envisaging this more as a two image operation, like a copy and paste. So, select one image as a source and then choose another as the target -- the source image is added to the composite module in the target image. This functionality as written seems to create additional duplicates instead (?) but I don't know how to tell which image is/should be the "master" and which images only appear within the composite module.
As I say, I'm less and less convinced that this was a good idea in the first place.
As I've mentioned in a conversation in pixls, I'm also far from convinced that this sort of thing (image compositing) is something darktable should do at all. We have to draw a line somewhere between raw processing and photoshop-like tools. I think we're pressing up against (or over) that line right now and I dislike the (darkroom) UX at the moment.
This functionality as written seems to create additional duplicates instead (?) but I don't know how to tell which image is/should be the "master" and which images only appear within the composite module.
No duplicate but multiple instance of composite module.
On my side it works. The master is always the first image selected on the lighttable. I have created a self composite or a composite with 2 or 3 images and it worked fine on my side. A bit slow, but all was done in less than 5s.
No duplicate but multiple instance of composite module
It seems to create duplicates for me and, from what I can tell it creates twice as many instances of the composite module as I'm expecting (half of which don't seem to include an image). I wonder if it's duplicating my images and then attempting to composite all of the duplicates as well.
It's also unusably slow (possibly because of the above behaviour) and makes me feel my computer is about to take off. I've ended up killing darktable a number of times because of how long it takes without seeming to do anything so what I have seen is from a very few brief forays into the darkroom view before I had to terminate the application.
I have zero idea about why you have duplicate created. The code added for this feature certainly cannot in any way create duplicates, so there must be something else...
This functionality as written seems to create additional duplicates instead (?)
I just pulled master today for first time in about a week or two, and I confirm duplicates issue. Weird thing is, I never even touched composite module, just made duplicates of existing edits in light table and lots of things went wrong, including dt becoming unresponsive and high cpu/fan. That high cpu/fan also occurs when backing up with rsync to external drive. It doesn't do that if I leave darktable out of backup. I figure it's related to this module since my symptoms are similar to elstoc, but if you wish I will open a new issue for it.
@SoupyGit : Fact is that the new code do not have anything to do with duplicate. It only adds some history item to one image. So there is no way a duplicate to be created. That being said since you're 2 to have reported this there is something probably fishy around... Do you have some Lua script? Have you tried with a fresh installation? Anything you can find to refine the understanding here would really help.
Seems like latest commits have solved the problems, so shouldn't need to open an issue now. Well done.
Closing as no consensus about the usefulness of this feature.