Как это работает
Сжатие с потерями не складывается арифметически. При первом кодировании JPEG отбрасывает детали, которые глаз не различает, — и получает основной выигрыш. К моменту повторного сжатия отбрасывать уже почти нечего: в файле остались только те данные, которые кодировщик счёл значимыми. Поэтому второй проход при том же качестве уменьшает вес на единицы процентов, а иногда файл даже растёт — накладные расходы формата никуда не деваются.
Хуже того, каждое пересохранение JPEG ухудшает картинку. Кодировщик заново разбивает изображение на блоки 8×8 пикселей, и артефакты предыдущего сжатия он воспринимает как настоящие детали, добросовестно их огрубляя. Так копится «поколенческая потеря»: после пяти-шести пересохранений на однотонных участках появляются заметные пятна и ореолы. То же самое касается и файлов из мессенджеров — Telegram, WhatsApp и соцсети уже сжали ваш снимок при отправке.
Что действительно работает, если вес нужно снизить ещё. Первое и главное — уменьшить размер в пикселях: пикселей меньше вчетверо, вес меньше примерно во столько же, и это не зависит от предыдущего сжатия. Второе — перевести файл в более эффективный формат: WEBP при том же качестве легче JPG примерно на треть. Третье — обрезать лишнее по краям кадра. И только четвёртым номером — опускать качество дальше, уже ценой видимых артефактов.