From 1000ae868e85aa71ff3aa3d1f60be4f53611dacf Mon Sep 17 00:00:00 2001 From: plegall Date: Mon, 19 Feb 2024 17:17:28 +0100 Subject: [PATCH] fixes #2118 add config setting animated_webp_compression_quality (default=70) --- admin/include/image.class.php | 4 +++- include/config_default.inc.php | 4 ++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/admin/include/image.class.php b/admin/include/image.class.php index 99e1e801c..67f02a1a8 100644 --- a/admin/include/image.class.php +++ b/admin/include/image.class.php @@ -638,12 +638,14 @@ class image_ext_imagick implements imageInterface function set_compression_quality($quality) { + global $conf; + if ($this->is_animated_webp) { // in cas of animated WebP, we need to maximize quality to 70 to avoid // heavy thumbnails (or square or whatever is displayed on the thumbnails // page) - $quality = min($quality, 70); + $quality = min($quality, $conf['animated_webp_compression_quality']); } $this->add_command('quality', $quality); diff --git a/include/config_default.inc.php b/include/config_default.inc.php index 25b37b279..ebe5ac129 100644 --- a/include/config_default.inc.php +++ b/include/config_default.inc.php @@ -925,6 +925,10 @@ $conf['derivative_default_size'] = 'medium'; // EXIF/IPTC... from derivative? $conf['derivatives_strip_metadata_threshold'] = 256000; +// For animated webP files, to avoid heavy derivatives, set a specific quality, +// different from derivatives.resize_quality +$conf['animated_webp_compression_quality'] = 70; + //Maximum Ajax requests at once, for thumbnails on-the-fly generation $conf['max_requests']=3;