For some pictures the waveform display is extremely useful. I understand why cinematographers only rely on a horizontal waveform view, the typical aspect ratios tend to be landscape oriented (this may change with more and more smartphone videgraphy ;) ). However, in photography, it would totally make sense to not only have a horizontal but a vertical waveform display as well. Maybe even an arbitrary direction would make sense, but as pictures tend to be rectangular, maybe a vertical waveform is already enough.
I am not sure if it would make sense to change the orientation of the containing “box”, but probably it would. But as this would mess up the darkroom view a lot, this has to be discussed a bit more.
This issue did not get any activity in the past 30 days and will be closed in 7 days if no update occurs. Please check if the master branch has fixed it since then.
Hm, I still consider this useful, despite the bot having another opinion.
@spaceChRiS I'm finally noticing this. I've wondered about this as well. Are you suggesting that the widget becomes vertical, or (and?) that the x/y axes on waveform can flip, such that brightness data is horizontal and spatial data is vertical?
It would be fairly trivial to make the waveform have an option to flip axes. The only question would be where to hide the extra button to do this -- unless this should be automatic for vertical images.
Of course unless the histogram widget changed shape, when axes were flipped there'd suddenly be a plethora of luminance data on the x-axis and not much spatial data on the y-axis. Regarding actually making the widget be vertical, see https://github.com/darktable-org/darktable/issues/4149#issuecomment-616407567:
The preview on the left and the histogram on the right should have the same size to keep the GUI balanced.
I suppose it would be possible to change the orientation of the preview widget as well for vertical images, but this seems like a significant change.
@dtorop - recently @elstoc made a PR which allows histogram to change size. Houz's comment is just "should" not "has to" ;)
Yes, ctrl+scroll should resize the histogram vertically now
Just catching up on recent work! I appreciate the ability to vertically resize the histogram. I added a note (https://github.com/darktable-org/darktable/pull/5276#discussion_r437840580) as it may be easy to just resize the widget without worrying about the underlying buffer -- but I haven't tested how this looks.
The question, then, is whether there should be a way to flip the axes of the waveform. This should be trivial, but it'd also add one more button to the UI, and it may add a bit of extra code to make sure that both versions are reasonably fast. I'm pretty neutral on this...
Thanks for looking into that, @dtorop and all! Regarding the questions, I was solely thinking about having a way to assess the brightness distribution in both directions and not only “x”. I had to correct a severe gradient in ~30 pictures and it was easy in x-direction with the waveform, but in y direction I was lost. The only question is if the analysis along the image y axis should also rotate the waveform. I think it should, such that more brightness shifts the curve to the right, and the y axis matches the image orientation.
Having a resizable widget may really be handy for this task. Thanks for adding this feature, @elstoc :)
@spaceChRiS Glad to hear back. I also agree that shifting the axes for a vertical waveform makes sense. I guess the only thing to do is to code it and see how it works, unless others have clear design visions.
I'm happy to work on this. It may not be right away, as I want to pull together #4298 which may require altering a bunch of the histogram plumbing.
Currently the waveform work is done here:
It may be this code is optimized for the current axes, and also that the resolution of the underlying buffer is optimized for a horizontal histogram. I'll have to see.
The other question is whether this will really start overloading the button in the histogram to add one more mode to waveform. At some point I think these buttons should shift to gtk/bauhaus which would simplify histogram code and make them more flexible. These are all v3.4 questions.
It may not be right away […] These are all v3.4 questions.
As I was able to solve my task already without this feature, I am anyway not holding my breath. I just had a task where this would have been handy, and I did not understand that I never saw this feature in a photo editor. I understand some of the multiple reasons that this tool is like it is in video tools (on one hand, for landscape oriented video it is more important to keep the brightness sound from left to right, and on the other hand, the analog origin of this tool which probably was much easier to implement horizontally), but for photography (and maybe for vertical video as it becomes more and more popular) it made sense to me to have it in both directions.
Regarding the implementation questions, I can hardly contribute. But thank you so much again for looking into this :smiley:!
Most helpful comment
@spaceChRiS Glad to hear back. I also agree that shifting the axes for a vertical waveform makes sense. I guess the only thing to do is to code it and see how it works, unless others have clear design visions.
I'm happy to work on this. It may not be right away, as I want to pull together #4298 which may require altering a bunch of the histogram plumbing.
Currently the waveform work is done here:
https://github.com/darktable-org/darktable/blob/26a903a65203d189b7c1d14a5e941ead565c177c/src/develop/pixelpipe_hb.c#L1009-L1118
It may be this code is optimized for the current axes, and also that the resolution of the underlying buffer is optimized for a horizontal histogram. I'll have to see.
The other question is whether this will really start overloading the button in the histogram to add one more mode to waveform. At some point I think these buttons should shift to gtk/bauhaus which would simplify histogram code and make them more flexible. These are all v3.4 questions.