Анимиран GIF (.gif)

Спецификация Стандарт

Graphics Interchange Format (GIF) е 8-битов растерен формат за изображения с палитра, разработен от CompuServe и станал световноизвестен с популяризирането на къси повтарящи се анимации в ранния уеб.

Конвертиране от GIF към MP4

Безплатен конвертор от GIF към MP4 в браузъра. Конвертирайте файлове незабавно на вашето устройство.

Компресирайте GIF онлайн

Поверително - файловете никога не напускат устройството ви

Проверка и метаданни

Операционните системи и файловите анализатори идентифицират GIF файлове чрез проверка на началната двоична байтова последователност:

Изберете или пуснете файлове тук

Поверително - файловете никога не напускат устройството ви

или поставете Ctrl+V
Гаранция за поверителност с нулево мрежово предаване: 0 байта са качени на външни сървъри. Цялата обработка се извършва локално в пясъчниците на вашия браузър.

Байтов подпис на заглавката (сигнатурни байтове)

Операционните системи и файловите анализатори идентифицират GIF файлове чрез проверка на началната двоична байтова последователност:

HEX ПОДПИС (ОФСЕТ 0):

47 49 46 38

ASCII ПРЕДСТАВЯНЕ: GIF8

Стандартизация: Спецификация на CompuServe GIF87a / GIF89a

Технически спецификации

Контейнерна архитектураБазиран на потоци формат за палитра с блокови заглавки и край (0x3B)
КомпресияКомпресия без загуба Lempel-Ziv-Welch (LZW) с речник
Поредност на байтовете (Endianness)Ред от младшия към старшия байт (Little-Endian) за размерите на платното и закъсненията на таймерите.
Цветови пространстваИндексирана 8-битова палитра (максимум 256 цвята на кадър)
Канали и структураИндексирана палитра с 1-битова двоична прозрачност (включено/изключено)
Максимални размери65 535 x 65 535 пиксела (2-байтови беззнакови цели числа)
Прозрачност1-битова двоична прозрачност (един цветен индекс, маркиран като прозрачен)
Поточно предаване и прогресивно зарежданеПоддържа се алгоритъм за 4-ходово междуредово преплитане в основната спецификация

Техническа сравнителна матрица: GIF спрямо конкуренти

Технически атрибутGIF (Текущ)Animated WebPMP4 (H.264)APNG
Размер на файлаМного голям (слаба компресия за видео кадри)Често е по-малък от GIF; резултатът зависи от съдържанието на изображението и настройките за кодиране.Може да е по-малък от GIF; резултатът зависи от съдържанието на изображението и настройките за кодиране.Умерен
Поддръжка на цветовеМаксимум 256 цвята на кадър16,7 милиона цвята (24-битов истински цвят)16,7 милиона цвята (YUV 4:2:0)16,7 милиона цвята (24-битов истински цвят)
ПрозрачностСамо 1-битова двоична (назъбени ръбове)Пълен 8-битов гладък алфа каналНяма родна прозрачностПълен 8-битов гладък алфа канал
Поддръжка на платформиШирока поддръжка на много съвременни и по-стари платформиПоддържа се от много съвременни браузъри; наличността варираПоддържа се от много видеоплейъри и браузъри; наличността варираПоддържа се от много съвременни браузъри; наличността варира

Често срещани видове повреди и ръководство за възстановяване на шестнадесетични данни

Анимацията се възпроизвежда частично и замръзва, или програмата за преглед на изображения съобщава за неочакван край на файла (EOF).

Първопричина: Липсващ завършващ байт 0x3B (точка и запетая), причинен от прекъснато изтегляне.

Възстановяване: Добавете байт 0x3B в края на файла с помощта на шестнадесетичен редактор.

Анализ на сигурността и вектори на атака към парсера

GIF файловете са прости, но исторически са страдали от атаки с препълване на буфера при LZW разширение и GIFAR полиглоти.

Известни вектори на атака

  • Уязвимости с препълване на LZW буфера в по-стари вградени декодери.
  • GIFAR полиглотни атаки: създаване на файлове, които едновременно са валидни GIF и валидни Java JAR файлове за заобикаляне на филтрите за качване.

Най-добри практики за защита: Прекодирайте качените от потребителите анимирани GIF файлове в MP4 или анимиран WebP в движение, за да спестите честотна лента и да неутрализирате полиглотните заплахи.

Исторически произход и етапи

2006Всички глобални патенти върху LZW компресията изтичат, с което GIF става обществено достояние.
1995Netscape 2.0 въвежда блок за приложно разширение, позволяващ безкрайно повтаряне на анимацията.
1989CompuServe публикува спецификацията GIF89a, добавяйки анимация и прозрачни цветове.
1987Стив Уилхайт и CompuServe пускат GIF87a за пренос на цветна графика през комутируеми модеми.

Основни предимства

  • GIF се поддържа от много браузъри и инструменти за изображения, но съвместимостта зависи от платформата и приложението.
  • Незабавно възпроизвеждане без договаряне на видео кодеци или лицензионни ограничения.
  • Компресия без загуба в рамките на неговата 256-цветна палитра.

Технически ограничения и минуси

  • Строго ограничен до палитра от 256 цвята (причинява тежки цветни ивици при фотографии).
  • Масово неефективен размер на файла в сравнение с модерните видео формати MP4, WebM или анимиран WebP (често 5 до 10 пъти по-голям).
  • Двоичната 1-битова прозрачност причинява назъбени пикселизирани ръбове на фонове, които не са бели (липсва алфа смесване).

Интересни технически факти

  • Създателят Стив Уилхайт пояснява през 2013 г., че предвиденото произношение е „джиф" с меко G.
  • Повтарящите се анимации не са част от официалната спецификация на CompuServe; Netscape добавя разширителния блок „NETSCAPE2.0" през 1995 г.
  • През 1994 г. Unisys обявява, че стриктно ще прилага своя софтуерен патент за LZW върху разработчици, създаващи GIF инструменти, което пряко кара общността с отворен код да изобрети формата Portable Network Graphics (PNG) като патентно свободна алтернатива.

Често задавани технически въпроси

Защо анимираните GIF файлове са толкова по-големи от MP4 видеата?

GIF е проектиран през 1987 г. като формат за статични изображения. В него липсват модерни концепции за видеокомпресия като междукадрови вектори на движение, макроблокове и времево предсказващо кодиране. Той съхранява всеки кадър като пълно самостоятелно растерно изображение, което води до огромни размери на файловете.

Как мога да намаля размера на GIF файл?

Можете да намалите броя на цветовете в палитрата, да понижите кадровата честота (напр. от 30 кадъра/сек до 15 кадъра/сек), да намалите размерите в пиксели или най-добре да конвертирате файла в модерен анимиран WebP или MP4 формат.

Поддържа ли GIF звук или аудио записи?

Не. Спецификацията CompuServe GIF е създадена само за растерни изображения и закъснения между кадрите; тя не включва структури от данни или механизми за синхронизация на аудио потоци. Съвременните платформи, които изглежда възпроизвеждат „GIF файлове със звук“, всъщност предоставят MP4/WebM видео без звук или без възможност звукът да бъде включен.

Свързани двойки за конвертиране на GIF

GIF до MP4

При конвертиране на анимиран GIF кадрите му се прекодират във видео; размерът на файла, цветовете и възпроизвеждането зависят от входния файл, настройките на кодиране и целевия плейър.

MP4 до GIF

Конвертирането на MP4 видео с циклично възпроизвеждане в анимиран GIF създава широко поддържан формат на изображение, който се възпроизвежда автоматично без видео плейър.

APNG до GIF

APNG към GIF може да помогне, ако приложението поддържа GIF, но не APNG. GIF ограничава кадрите до 256 цвята, а възпроизвеждането зависи от приложението.

GIF до APNG

Конвертирането на анимиран GIF в APNG файл надгражда старата 256-цветова растрова анимация до модерна пълноцветна последователност с гладка прозрачност.

LOTTIE до GIF

Конвертирането на JSON файл с векторна Lottie анимация в растров анимиран GIF свързва съвременната графика, управлявана с код, с универсалната съвместимост на изображенията.

WEBP до GIF

Конвертирането на анимирани WebP файлове в анимирани GIF файлове осигурява съвместимост на съвременните формати за растерна анимация с по-старите уеб стандарти.

GIF до PDF

Споделете началното изображение на GIF като едностраничен PDF за сценарий или отчет. Следващите кадри, таймингът и цикличността не са включени.