Краткий итог о качестве иллюстраций:
① Сообщения в Телеграме могут быть чисто текстовыми, а бывают и подписями к иллюстрациям.
② Наиболѣе популярным в Телеграме типом иллюстрации являются не видео, не звукозаписи, не голосовухи, не файлы, а картинки.
③ Иллюстрацию, посланную в Telegram не как файл, а как картинка над сообщением, Telegram стремится непремѣнно переужать в JPEG. Если она ужé в JPEG, всё равно случается переужатие JPEG в JPEG на стороне сёрвера — когда результат того переужатия по объёму превосходит исходную картинку, тогда Telegram использует исходную (для экономии объёма), иначе использует результат переужатия. Но есть нѣкій баг, силою которого (насколько я понял то, что вижу) результат переужатия используется при любом его объёме, если в исходном файле JPEG указан профиль ICC.
④ Telegram экономит дорогостоящее время работы сёрвера. (Примѣръ: Telegram не переужимает из GIF в MP4, если объём GIF превосходит 10 мегабайтов — хотя, казалось бы, чѣмъ больше объём, тѣмъ больше ожидаемая выгода от переужатия. Слѣдовательно, величина затрат времени сёрвера важнѣе величины такой выгоды, так что въ цѣломъ нѣтъ экономіи.) Поэтому Telegram и при переужатии JPEG в JPEG использует кодировщик, выбранный не съ цѣлью получать наивысшее качество JPEG в рамках достигаемого объёма файла, а съ цѣлью быстрѣе работать.
⑤ Но пользователь Телеграма не связан необходимостью экономии усилий и оттого может снабжать сообщения своего канала (и свои реплики в чатах) картинками болѣе высокаго качества (чѣмъ создаваемыя Телеграмом), если они не снабжены профилями ICC (то есть обходят вышеупомянутый баг), и если пользователь сожмёт их сам (и болѣе высококачественным кодировщиком JPEG, чѣмъ телеграмный), и если пользователь сожмёт их до такого объёма, который Telegram не пожелает переужать на сёрверной стороне (то есть итог телеграмного переужатия картинки окажется бóльшим по объёму, чѣмъ она самá), но не слишком далѣе этой пороговой величины объёма. Каждое из этих трёх условий обязательно.
⑥ Код сёрверов Телеграма не открыт, поэтому нельзя заранѣе знать, какая команда исполняется там для сжатия JPEG. Надёжность провѣрки того, пожелал ли сёрвер сжать нѣкій JPEG ещё сильнѣе, обеспечивает незаблаговременный способ: нужно отправить JPEG картинкою (из Telegram Desktop, чтобы не произошло переужатие JPEG при отправке) в Saved Messages, затѣмъ выйти оттуда и очистить кэш, затѣмъ перезапустить Telegram Desktop, затѣмъ сохранить JPEG (ужé не кэшированный, а взятый с сёрвера) и сравнить его объём с объёмом исходного JPEG.
⑦ Очистка кэша — трудоёмкая затѣя (надо зайти в настройки Telegram Desktop, затѣмъ въ ихъ подраздѣлъ «Advanced», жмякнуть пункт «Manage local storage» и ткнуть в нём кнопку «Clear all»). Оттого хочется чистить кэш как можно рѣже, а не послѣ отправки каждого провѣряемого JPEG.
⑧ Желаемое достигается, если отправлять провѣряемые JPEG альбомами — до десяти JPEGов сразу. Напримѣръ, в первом альбоме отправить результаты работы кодировщика jpegli с параметром расстояния (выраженного в единицах JND butteraugli), перемѣняющимся от «1.4» до «1.9» с шагом ⅒. Обнаружив (когда совершится очистка кэша → перезапуск → перескачивание → сравнение), что сёрверное переужатие вариантов нѣкоей картинки прекращается между значениями «1.5» и «1.6», можно отправить второй альбом из десяти результатов, достигаемых значениями от «1.51» до «1.59» с шагом, равным 1% JND. Обнаружив (когда вдругорядь совершится очистка кэша → перезапуск → перескачивание → сравнение), что переужатие прекращается не ранѣе значения «1.59», можно отправить третий альбом из десяти результатов, достигаемых значениями от «1.591» до «1.599» с шагом, равным 1‰ JND. Среди них (когда въ послѣдній раз совершится очистка кэша → перезапуск → перескачивание → сравнение) можно найти значение, обеспечивающее наивысшее качество конкретной картинки, достижимое в рамках нынѣшнихъ настроек сёрверного сжатия.
⑨ Telegram вѣчно хранит даже стёртыя картинки. Если «метод трёх альбомов» начнут примѣнять хотя бы пока ещё только 5% пользователей, то объём хранимых картинок ужé болѣе чѣмъ удвоится.
① Сообщения в Телеграме могут быть чисто текстовыми, а бывают и подписями к иллюстрациям.
② Наиболѣе популярным в Телеграме типом иллюстрации являются не видео, не звукозаписи, не голосовухи, не файлы, а картинки.
③ Иллюстрацию, посланную в Telegram не как файл, а как картинка над сообщением, Telegram стремится непремѣнно переужать в JPEG. Если она ужé в JPEG, всё равно случается переужатие JPEG в JPEG на стороне сёрвера — когда результат того переужатия по объёму превосходит исходную картинку, тогда Telegram использует исходную (для экономии объёма), иначе использует результат переужатия. Но есть нѣкій баг, силою которого (насколько я понял то, что вижу) результат переужатия используется при любом его объёме, если в исходном файле JPEG указан профиль ICC.
④ Telegram экономит дорогостоящее время работы сёрвера. (Примѣръ: Telegram не переужимает из GIF в MP4, если объём GIF превосходит 10 мегабайтов — хотя, казалось бы, чѣмъ больше объём, тѣмъ больше ожидаемая выгода от переужатия. Слѣдовательно, величина затрат времени сёрвера важнѣе величины такой выгоды, так что въ цѣломъ нѣтъ экономіи.) Поэтому Telegram и при переужатии JPEG в JPEG использует кодировщик, выбранный не съ цѣлью получать наивысшее качество JPEG в рамках достигаемого объёма файла, а съ цѣлью быстрѣе работать.
⑤ Но пользователь Телеграма не связан необходимостью экономии усилий и оттого может снабжать сообщения своего канала (и свои реплики в чатах) картинками болѣе высокаго качества (чѣмъ создаваемыя Телеграмом), если они не снабжены профилями ICC (то есть обходят вышеупомянутый баг), и если пользователь сожмёт их сам (и болѣе высококачественным кодировщиком JPEG, чѣмъ телеграмный), и если пользователь сожмёт их до такого объёма, который Telegram не пожелает переужать на сёрверной стороне (то есть итог телеграмного переужатия картинки окажется бóльшим по объёму, чѣмъ она самá), но не слишком далѣе этой пороговой величины объёма. Каждое из этих трёх условий обязательно.
⑥ Код сёрверов Телеграма не открыт, поэтому нельзя заранѣе знать, какая команда исполняется там для сжатия JPEG. Надёжность провѣрки того, пожелал ли сёрвер сжать нѣкій JPEG ещё сильнѣе, обеспечивает незаблаговременный способ: нужно отправить JPEG картинкою (из Telegram Desktop, чтобы не произошло переужатие JPEG при отправке) в Saved Messages, затѣмъ выйти оттуда и очистить кэш, затѣмъ перезапустить Telegram Desktop, затѣмъ сохранить JPEG (ужé не кэшированный, а взятый с сёрвера) и сравнить его объём с объёмом исходного JPEG.
⑦ Очистка кэша — трудоёмкая затѣя (надо зайти в настройки Telegram Desktop, затѣмъ въ ихъ подраздѣлъ «Advanced», жмякнуть пункт «Manage local storage» и ткнуть в нём кнопку «Clear all»). Оттого хочется чистить кэш как можно рѣже, а не послѣ отправки каждого провѣряемого JPEG.
⑧ Желаемое достигается, если отправлять провѣряемые JPEG альбомами — до десяти JPEGов сразу. Напримѣръ, в первом альбоме отправить результаты работы кодировщика jpegli с параметром расстояния (выраженного в единицах JND butteraugli), перемѣняющимся от «1.4» до «1.9» с шагом ⅒. Обнаружив (когда совершится очистка кэша → перезапуск → перескачивание → сравнение), что сёрверное переужатие вариантов нѣкоей картинки прекращается между значениями «1.5» и «1.6», можно отправить второй альбом из десяти результатов, достигаемых значениями от «1.51» до «1.59» с шагом, равным 1% JND. Обнаружив (когда вдругорядь совершится очистка кэша → перезапуск → перескачивание → сравнение), что переужатие прекращается не ранѣе значения «1.59», можно отправить третий альбом из десяти результатов, достигаемых значениями от «1.591» до «1.599» с шагом, равным 1‰ JND. Среди них (когда въ послѣдній раз совершится очистка кэша → перезапуск → перескачивание → сравнение) можно найти значение, обеспечивающее наивысшее качество конкретной картинки, достижимое в рамках нынѣшнихъ настроек сёрверного сжатия.
⑨ Telegram вѣчно хранит даже стёртыя картинки. Если «метод трёх альбомов» начнут примѣнять хотя бы пока ещё только 5% пользователей, то объём хранимых картинок ужé болѣе чѣмъ удвоится.