Формат файла GIF
GIF держится на одной способности: короткая анимация, которая сама проигрывается везде, где показывают картинку. Всё остальное в нём устарело десятилетия назад.
или перетащите их сюда · изображения, видео, аудио и документы · до 2 ГБ
Что такое GIF?
CompuServe опубликовала GIF в 1987 году как способ передавать изображения по коммутируемым линиям. Его определяющее ограничение — палитра: изображение может использовать максимум 256 различных цветов, подобранных на файл. Для логотипа или штрихового рисунка этого с избытком. Для фотографии или кадра видео — категорически мало, поэтому кодеры прибегают к дизерингу, рассыпая пиксели доступных цветов, чтобы подделать недостающие; отсюда та самая узнаваемая крапчатость.
Сжатие здесь LZW, без потерь в пределах палитры. Этот алгоритм был запатентован Unisys, и когда в середине девяностых компания начала патент применять, веб взбунтовался, запустил кампанию «Burn All GIFs» и создал PNG как свободную альтернативу. Патент истёк в 2004 году — сильно позже, чем был нанесён ущерб, и PNG к тому времени уже стал стандартом для статичных изображений.
В анимации GIF поразительно неэффективен. У него нет никакой компенсации движения: каждый кадр хранится как отдельная картинка, пропускаются лишь неизменившиеся прямоугольники. Пятисекундный ролик, который в MP4 весил бы 300 КБ, в GIF регулярно доходит до 5 МБ. Соцсети об этом знают и втихую перекодируют загруженные GIF в видео, оставляя название и выбрасывая формат.
| Расширение | .gif |
|---|---|
| Категория | Изображение |
| MIME-тип | image/gif |
| Год появления | 1987 |
| Разработчик | CompuServe |
| Сжатие | Без потерь |
| Прозрачность | Да |
| Анимация | Да |
GIF: частые вопросы
- Почему мой GIF выглядит зернистым и полосатым?
- Потому что в палитре всего 256 цветов. В фотографии или кадре видео их тысячи, поэтому кодер приближает их дизерингом — смешивает доступные цвета крапчатыми узорами. Сильнее всего страдают плавное небо и тона кожи. Любой полноцветный формат вроде WebP или MP4 снимает проблему полностью.
- Почему файл GIF такой большой?
- GIF хранит каждый кадр как почти полное изображение и не имеет компенсации движения, поэтому размер растёт почти линейно с числом кадров. Видеокодеки вместо этого сохраняют разницу между кадрами. Внутри формата реальных рычагов всего три: частота кадров, размеры и длительность.
- Что выбрать для анимации — GIF или MP4?
- MP4 или WebP для всего, что длиннее секунды-двух: обычно в пять-двадцать раз меньше и с гораздо лучшим цветом. GIF оставляйте там, где место назначения действительно его требует: часть мессенджеров, подписи в письмах и старые форумы, не встраивающие видео.
- Бывает ли у GIF прозрачность?
- Только двоичная. Одну запись палитры можно пометить прозрачной, поэтому пиксель либо полностью виден, либо полностью невидим, — отсюда рваные края на скруглениях и тенях. PNG, WebP и AVIF предлагают градуированный альфа-канал, который отрисовывает края как надо.
- Теряется ли качество при конвертации GIF в MP4?
- Конвертация идёт с потерями, но результат обычно выглядит лучше, а не хуже, потому что видеокодек не ограничен 256 цветами и тратит биты там, где они важны. Теряется главным образом автовоспроизведение в тех местах, где показывают картинки, но не видео.
- Как сделать GIF из видео?
- Обрежьте до самого короткого полезного фрагмента, снизьте частоту до 10-15 кадров в секунду, уменьшите ширину до 480 пикселей или меньше и дайте кодеру собрать оптимизированную палитру по реальному материалу. Эти четыре шага определяют почти весь итоговый размер.