-
Notifications
You must be signed in to change notification settings - Fork 1
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
option to configure resampling filter for thumbnail generation #12
Comments
Thank you very much for you feedback. I created a new test case, TestGenerateImageThumbnailPerformance, that generates thumbnails with different resampling filters on following branch:
Unfortunately I don't see much performance gain on my ROCK64 SBC nor my Windows PC (see test results below). The quality is quite similar using all the filters except "NearestNeighbor" which has really bad quality. I suggest we simply change the resampling filter from Lanczos to Box since this is the fastest filter with, in my opinion, acceptable quality. What do you think about that?
|
Sounds fine to me. I expected more difference. Thanks for testing it out. |
Accidentally closed, sry. |
This might also be of interest https://github.com/fawick/speedtest-resize/blob/master/README.md |
That link was not any happy reading for me who prefer a pure golang imaging library ;-) If we implement #11 the speed of thumbnail generation might not be that big of an issue. |
Resampling filter was changed from Lanczos to Box in following release: https://github.com/midstar/mediaweb/releases/tag/mediaweb-v1.0.0.132 |
Thumbnails are currently generated with imaging using the Lanczos resampling filter. This filter is the most resource-consuming, especially on low performance devices like raspberry pi this results in slow thumbnail generation.
I suggest to add a config option to configure the resampling filter (NearestNeighbor, Box, Linear, Hermite, MitchellNetravali, CatmullRom, BSpline, Gaussian, Lanczos, Hann, Hamming, Blackman, Bartlett, Welch, Cosine) so that thumbnail generation can be optimized towards the platform used.
The text was updated successfully, but these errors were encountered: