Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Style creation/application messed up in 4.8.1 #17369

Open
bherwig opened this issue Aug 25, 2024 · 4 comments
Open

Style creation/application messed up in 4.8.1 #17369

bherwig opened this issue Aug 25, 2024 · 4 comments

Comments

@bherwig
Copy link

bherwig commented Aug 25, 2024

Describe the bug

Hi there,

Thank you a lot for great darktable!

I use darktable 4.8.1 on Debian Sid (darktable-package versioned as 4.8.1-2).

When I create a style, something does not work as it did before. A very similar, probably the same issue, is described here by other people: https://discuss.pixls.us/t/problems-with-setting-up-a-style-in-4-8/44459

What I observe:

It seems to me, that everytime I touch a module (but I do not create an new instance! I only touch the exactly same module instance every now and then, between the times I use some other module, etc., as traceable in the history stack), in the respectively created style, for every time I touched a module, a new instance of that module is created. But it does not seem like the style is a "replay" of the actions I took during edit-time with exactly one single instance of the same module.

I attached a style-file (attached a .txt-extension). There I used the same instance of the exposure-module twice. For every <operation-tag, a new instance seems to be created, when the style is applied.

Thank you a lot for looking into this.

Benjamin

Steps to reproduce

  1. Load some image, do stuff
  2. Use some module-instance more than once, i. e. to correct some setting or so, so that the history stack contains more than one entry for a particular module (for example: do exposure-correction, do tone-equalizing, do exposure-correction again)
  3. Create a style from what is done so far
  4. Apply the style (with "Overwrite"-setting)
  5. Probably in lighttable already see a scrambled edit of the photographs the style got applied to, moreover: in darkroom observe multiple instances of the module-instance used more than once in step 2.

Expected behavior

as in previous versions, apply the style with the actions I did with only one module-instance .... as if it was a replay of the actions I did.

Logfile | Screenshot | Screencast

Reproduce_3.dtstyle.txt

Commit

No response

Where did you obtain darktable from?

distro packaging

darktable version

4.8.1-2

What OS are you using?

Linux

What is the version of your OS?

Debian Sid, all latest updates

Describe your system?

No response

Are you using OpenCL GPU in darktable?

None

If yes, what is the GPU card and driver?

No response

Please provide additional context if applicable. You can attach files too, but might need to rename to .txt or .zip

No response

@bherwig bherwig changed the title Style creation messed up in 4.8.1 Style creation/application messed up in 4.8.1 Aug 25, 2024
@wpferguson
Copy link
Member

  • You open an image and your workflow is set to scene-referred,. so a default exposure is applied.
  • You edit the image, applying different modules
  • You look at the finished image and decide it needs an exposure adjustment, so you tweak the exposure. So now you have 1 instance of exposure with 2 entries in the history stack.
  • You return to lighttable and select the image you just edited.
  • You open the history stack module and select copy
  • You select another image in the lighttable
  • You select overwrite mode in the history stack and then paste the history stack to the selected image.
  • You open the new image and see 1 instance of exposure with 2 entries in the history stack.

A style is NOT a copy of the history stack. It is a copy of the modules and their settings for each item that you selected, or all if you just accepted the default. You can also specify to copy the module order to make sure things are where you put them. When you apply the style it creates as many modules as you selected and sets them to the copied settings. This is to make sure that when you really have multiple instances of a module they all get included and applied.

To create a style that accurately reflected the state of the image, you would only select the uppermost instance of each module you want included.

If you want to "replay" an edit, then you need to copy and paste the history stack.

@bherwig
Copy link
Author

bherwig commented Aug 26, 2024

Thanks @wpferguson, your wording as well as your workflow is much more correct than mine and I think I got the idea of it all.

However, it seems to me that in the end the results of your and mine respective workflows in some version before current 4.8.1-DT have been the same.

I'd admit that maybe my workflow is sort of buggy. But not totally, since once it worked perfectly. I really used my workflow a lot when I batch-processed macro-stacks. So, at the same time I still I believe, that something changed at the DT-side. Because: I never had multiple instances with my workflow before, when I applied styles. After style-application, one module-instance stood exactly that one module-instance.

So I stick to this BR.

Thank you however for hinting me at some problems with my workflow.

@wpferguson
Copy link
Member

There was a change with styles and it dealt with multiple instances of the same module (#16376, #15112)

@bherwig
Copy link
Author

bherwig commented Aug 27, 2024

@wpferguson Thanks a lot!

Probably the issues are at least related to the observation I described above.

I see that I'm not deep enough in DT-details to phrase properly or to estimate, whether the issues are related or there's a common regression. I'd like to return to this soon. Can u please leave this open?

For the moment, copying/pasting the history stack seems to be a workaround (or even the better approach) to my problem, though I still have to find the time to test it. Thanks again!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants