Skip to content

imageio: don't hide quality slider for webp lossless #14868

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

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

kmilos
Copy link
Contributor

@kmilos kmilos commented Jul 12, 2023

The tooltip also mentions it for lossless (affects speed/effort), so we don't actually want to hide it.

Could even be considered a "bugfix" for 4.4.2...

@TurboGit
Copy link
Member

Quality for lossless seems suspect to me. So I tried it and in all cases changing the quality slider from 20% to 100% does not change the size of the exported image. So what does this slider do? Maybe that's the tooltip that should be fixed, no?

@kmilos
Copy link
Contributor Author

kmilos commented Jul 13, 2023

So what does this slider do? Maybe that's the tooltip that should be fixed, no?

Haven't tested myself, but this is what the libwebp API says/claims as well:

https://github.com/webmproject/libwebp/blob/b92deba353cf4dedf876e88783d95fc6f3cf5c26/src/webp/encode.h#L97-L101

@TurboGit
Copy link
Member

Ok, the doc is:

  float quality;          // between 0 and 100. For lossy, 0 gives the smallest
                          // size and 100 the largest. For lossless, this
                          // parameter is the amount of effort put into the
                          // compression: 0 is the fastest but gives larger
                          // files compared to the slowest, but best, 100.

But clearly this does not work on our side. Maybe there is an additional parameter to set...

Reading again the doc above, it seems that for lossless we have only 0% or 100% working. Indeed with 100% it takes some more time and the file size is a bit smaller (23.1Mb instead of 23.4MB). For anything < 100% the speed seems to be the same and the size always 23.4Mb.

So it looks like more an option saying : "optimize for speed", "optimize for size". If this is confirmed somehow, maybe the best option would be to have another slider with more user friendly semantic.

@TurboGit TurboGit added this to the 4.6 milestone Jul 13, 2023
@TurboGit TurboGit added feature: enhancement current features to improve scope: UI user interface and interactions scope: image processing correcting pixels scope: software support wiring external libs and software: LittleCMS, colord, G'MIC, enfuse/enblend, etc. labels Jul 13, 2023
@kmilos
Copy link
Contributor Author

kmilos commented Jul 13, 2023

TBH, I wasn't planning to dig deeper into this, the idea was to just align the UI to the API/tooltip when I noticed the difference...

@TurboGit
Copy link
Member

At this stage let's reschedule that for 4.8.

@TurboGit TurboGit modified the milestones: 4.6, 4.8 Nov 17, 2023
@TurboGit TurboGit modified the milestones: 4.8, 5.0 May 18, 2024
@TurboGit TurboGit modified the milestones: 5.0, 5.2 Nov 21, 2024
@TurboGit TurboGit modified the milestones: 5.2, 5.4 May 16, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature: enhancement current features to improve scope: image processing correcting pixels scope: software support wiring external libs and software: LittleCMS, colord, G'MIC, enfuse/enblend, etc. scope: UI user interface and interactions
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants