A
Вмѣсто этого я был бы очень рад дать альтернативный совѣтъ: так как всѣ проблемы происходят оттого, что Telegram всякий небольшой GIF (меньше 10 мегабайтов) преобразует в MP4 (с потерями качества), и притом ещё каждый MP4-без-звука также считает GIFкою (и уменьшает размѣръ кадра с потерями качества), то решение проблемы состоит в том, чтобы, во-первых, самостоятельно преобразовать небольшой GIF в небольшой MP4 без внесения потерь (в частности, использовать RGB-цвѣтъ пикселов в MP4 вмѣсто YUV-цвѣта, чтобы избѣжать преобразования из одного цвѣтового пространства в другое с потерями), а во-вторых, снабдить его звуковою дорожкою (хотя бы и содержащею одну только тишину), чтобы Telegram не трогал размѣръ кадра. Соѿвѣтствующая команда для FFmpeg выглядела бы как-нибудь так:
ffmpeg -hide_banner -f lavfi -i anullsrc -i исходныйФайл -map_metadata -1 -c:a aac -b:a 8k -c:v libx264rgb -preset placebo -crf 0 -movflags +faststart -flags +cgop -shortest результат.mp4Однако этот подход не только экономит дисковое пространство на серверах Телеграма (создавая небольшие файлы вмѣсто десятимегабайтовых), но и не работает нигдѣ, кроме как в Telegram Desktop, потому что остальные извѣстныя версии Телеграма преисполнены багов, проявляющиеся при отображении MP4-файлов с RGB-пикселами: под Android видео вообще не показывается, под iOS цвѣта рѣзко измѣняются.