-
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
Slow rotate on this order rotate().resize().toBuffer() #3725
Comments
Hi, thanks for reporting, this was a relatively easy thing to improve by switching to libvips' sequential read optimisation for EXIF-based auto-orientation - see commit 2f67823 For the test image provided, this provides at least a 3x performance gain. This improvement will be in v0.32.2 |
Great to hear it was easy to improve it. Thanks for include it. Just curious this new version when would be released it? :) |
v0.32.2 now available. |
thanks @lovell, I just tested it and I am not sure why now I am getting the following Error testing the code above, this is the new output:
I can not do resize().rotate().toBuffer():
|
Argh, not sure why I didn't spot that, sorry. Commit bcd865c refactors the pipeline logic to ensure decoding can remain sequential for all operations, which should help avoid this situation. This will be in v0.32.3. |
v0.32.3 now available. |
Possible bug
Is this a possible bug in a feature of sharp, unrelated to installation?
npm install sharp
completes without error.node -e "require('sharp')"
completes without error.If you cannot confirm both of these, please open an installation issue instead.
Are you using the latest version of sharp?
sharp
as reported bynpm view sharp dist-tags.latest
.If you cannot confirm this, please upgrade to the latest version and try again before opening an issue.
If you are using another package which depends on a version of
sharp
that is not the latest, please open an issue against that package instead.What is the output of running
npx envinfo --binaries --system --npmPackages=sharp --npmGlobalPackages=sharp
?What are the steps to reproduce?
What is the expected behaviour?
The usage of
rotate().resize().toBuffer()
should not be too long, it should be close to the time taken whenrotate().extract().toBuffer()
is executed.Please provide a minimal, standalone code sample, without other dependencies, that demonstrates this problem
output
Please provide sample image(s) that help explain this problem
test.tar.gz
The text was updated successfully, but these errors were encountered: