GIF מונפש (.gif)
CompuServe תקןפורמט החלפת הגרפיקה (Graphics Interchange Format או GIF) הוא פורמט תמונת רסטר מבוסס פלטה של 8 ביט שפותח על ידי CompuServe, והוא זוכה להכרה עולמית הודות לפופולריות העצומה של הנפשות קצרות וחוזרות בלולאה ברשת בראשית דרכה.
המר GIF ל-MP4
ממיר חינמי מ-GIF ל-MP4 פועל בדפדפן. המר קבצים באופן מיידי במכשיר שלך.
כיווץ GIF אונליין
פרטי - הקבצים לעולם אינם עוזבים את המכשיר שלך
בדיקה ומטא-נתונים
מערכות הפעלה ומנתחי קבצים מזהים קבצי GIF על ידי בדיקת רצף הבייטים הבינארי הראשוני:
חתימת כותרת ברמת הבייט (Magic Bytes)
מערכות הפעלה ומנתחי קבצים מזהים קבצי GIF על ידי בדיקת רצף הבייטים הבינארי הראשוני:
חתימת HEX (היסט 0):
47 49 46 38ייצוג ASCII: GIF8
תקינה: CompuServe GIF87a / GIF89a Specification
מפרט טכני
| מבנה המכולה | פורמט תמונת פלטה מבוסס זרם עם כותרות בלוק וקוד סיום (0x3B) |
| דחיסה | דחיסת מילון ללא אובדן נתונים מסוג Lempel-Ziv-Welch (LZW) |
| סדר בתים (Endianness) | Little-Endian עבור ממדי משטח הציור ותזמוני השהיה |
| מרחבי צבע | פלטת 8 ביט ממופה (מקסימום 256 צבעים לכל פריים) |
| ערוצים ומבנה | פלטה ממופה עם שקיפות בינארית של 1 ביט (מופעל/כבוי) |
| ממדים מרביים | 65,535 על 65,535 פיקסלים (מספרים שלמים חיוביים בני 2 בתים) |
| שקיפות | שקיפות בינארית של 1 ביט (אינדקס צבע יחיד המסומן כשקוף) |
| הזרמה ופרוגרסיביות | אלגוריתם שזירת קווים בן 4 מעברים נתמך במפרט הבסיסי |
מטריצת השוואה טכנית: GIF מול מתחרים
| תכונה טכנית | GIF (נוכחי) | Animated WebP | MP4 (H.264) | APNG |
|---|---|---|---|---|
| גודל קובץ | גדול מאוד (דחיסה גרועה עבור פריימי וידאו) | לעיתים קרובות קטן יותר מ-GIF; התוצאה תלויה בתוכן התמונה ובהגדרות הקידוד | עשוי להיות קטן יותר מ-GIF; התוצאה תלויה בתוכן התמונה ובהגדרות הקידוד | בינוני |
| תמיכה בצבעים | 256 צבעים לכל היותר לפריים | 16.7 מיליון צבעים (צבע מלא של 24 ביט) | 16.7 מיליון צבעים (YUV 4:2:0) | 16.7 מיליון צבעים (צבע מלא של 24 ביט) |
| שקיפות | בינארית של 1 ביט בלבד (קצוות משוננים) | ערוץ אלפא מלא וחלק של 8 ביט | ללא שקיפות מובנית | ערוץ אלפא מלא וחלק של 8 ביט |
| תמיכה בפלטפורמות | תמיכה רחבה בפלטפורמות רבות, ישנות וחדשות | נתמך בדפדפנים מודרניים רבים; הזמינות משתנה | נתמך בנגני וידאו ובדפדפנים רבים; הזמינות משתנה | נתמך בדפדפנים מודרניים רבים; הזמינות משתנה |
מצבי השחתה נפוצים ומדריך שחזור הקסדצימלי (Hex)
ההנפשה מתנגנת חלקית וקופאת, או שמציג התמונות מדווח על סוף קובץ בלתי צפוי.
גורם שורש: חסר בייט סיום 0x3B (נקודה-פסיק) כתוצאה מהורדה שנקטעה.
שחזור: הוסף את הבייט 0x3B לסוף הקובץ באמצעות עורך הקסדצימלי.
ניתוח אבטחה ווקטורי תקיפה נגד מנתחי פורמטים (parsers)
קובצי GIF פשוטים, אך לאורך השנים היו חשופים להתקפות גלישת חוצץ בהרחבת LZW ולקובצי GIFAR פוליגלוטיים.
ווקטורי תקיפה ידועים
- פגיעויות של גלישת חוצץ במפענחי LZW מובנים ישנים.
- התקפות פוליגלוט מסוג GIFAR: יצירת קבצים שהם בו-זמנית קובצי GIF תקינים וקובצי Java JAR תקינים, כדי לעקוף מסנני העלאה.
שיטות מומלצות להגנה: המר קובצי GIF מונפשים שהועלו על ידי משתמשים ל-MP4 או ל-WebP מונפש בזמן אמת, כדי לחסוך ברוחב פס ולנטרל איומי פוליגלוט.
היסטוריה ואבני דרך
יתרונות מרכזיים
- דפדפנים וכלי תמונה רבים תומכים ב-GIF, אך התאימות משתנה לפי הפלטפורמה והיישום.
- הפעלה מיידית ללא משא ומתן על מקודדי וידאו או מגבלות רישוי.
- דחיסה ללא אובדן נתונים בתוך פלטת 256 הצבעים שלה.
מגבלות טכניות וחסרונות
- מוגבל באופן מוחלט לפלטה של 256 צבעים (גורם לרצועות צבע בולטות בתצלומים).
- גודל קובץ גדול באופן קיצוני בהשוואה לפורמטי וידאו מודרניים כמו MP4, WebM או WebP מונפש (לעתים קרובות פי 5 עד 10).
- שקיפות בינארית של 1 ביט גורמת לשוליים משוננים ומפוקסלים על רקעים שאינם לבנים (ללא מיזוג אלפא).
עובדות טכניות מעניינות
- היוצר סטיב וילהייט הבהיר באופן מפורסם בשנת 2013 שההגייה המיועדת היא JIF, עם G רכה.
- הנפשות בלולאה לא היו חלק ממפרט CompuServe הרשמי; Netscape הוסיפה את בלוק ההרחבה 'NETSCAPE2.0' בשנת 1995.
- בשנת 1994, Unisys הודיעה כי תאכוף באגרסיביות את פטנט תוכנת ה-LZW שלה על מפתחים המייצרים כלי GIF, דבר שהוביל ישירות את קהילת הקוד הפתוח להמציא את פורמט הגרפיקה הניידת ברשת (PNG) כחלופה חופשית מפטנטים.
שאלות טכניות נפוצות
למה קבצי GIF מונפשים גדולים כל כך בהשוואה לסרטוני MP4?
פורמט ה-GIF תוכנן בשנת 1987 כפורמט תמונה סטטית. חסרים בו מושגי דחיסת וידאו מודרניים כגון וקטורי תנועה בין פריימים, מאקרו-בלוקים וקידוד חזוי זמני. הוא מאחסן כל פריים כתמונת רסטר מלאה ועצמאית, מה שמוביל לקובצי ענק.
איך אני יכול להקטין את גודל קובץ ה-GIF?
אפשר להפחית את מספר הצבעים בפלטה, להוריד את קצב הפריימים (לדוגמה, מ-30 פריימים לשנייה ל-15 פריימים לשנייה), להקטין את ממדי התמונה, או, רצוי, להמיר את הקובץ לפורמט WebP מונפש או ל-MP4 מודרני.
האם GIF תומך בקול או ברצועות שמע?
לא. מפרט ה-GIF של CompuServe נועד אך ורק לפריימים של תמונות מפת סיביות ולהשהיות בין פריימים; הוא אינו מכיל מבני נתונים או מכלי סנכרון לזרמי שמע. פלטפורמות מודרניות שנראות כאילו הן מנגנות 'קובצי GIF עם צליל' מספקות למעשה קובצי וידאו מסוג MP4/WebM, המושתקים או שאי אפשר לבטל בהם את ההשתקה.
זוגות המרה קשורים ל-GIF
המרת GIF מונפש ל-MP4 מקודדת מחדש את הפריימים כווידאו; גודל הקובץ, הצבע ואופן ההפעלה תלויים בקלט, בהגדרות המקודד ובנגן היעד.
המרת לופ וידאו בפורמט MP4 ל-GIF מונפש יוצרת פורמט תמונה נתמך באופן נרחב המופעל אוטומטית ללא צורך בנגן וידאו ייעודי.
המרת APNG ל-GIF עשויה לעזור אם האפליקציה תומכת ב-GIF אך לא ב-APNG. GIF מגביל כל פריים ל-256 צבעים וההפעלה תלויה באפליקציה.
המרת קובץ GIF מונפש ל-APNG משדרגת אנימציית רסטר מיושנת בעלת 256 צבעים לרצף צבע מלא מודרני עם שקיפות חלקה.
המרת קובץ JSON של אנימציית וקטור מסוג Lottie ל-GIF מונפש מבוסס רסטר מגשרת על הפער בין גרפיקה מודרנית מונחית קוד לבין תאימות תמונות אוניברסלית.
המרת קבצי WebP מונפשים לקבצי GIF מונפשים מגשרת בין פורמטי אנימציית רסטר מודרניים לבין תקני אינטרנט ישנים יותר הדורשים תאימות אוניברסלית.
שתף את תמונת הפתיחה של קובץ GIF כקובץ PDF בן עמוד אחד עבור לוח סיפור (סטוריבורד) או דוח. מסגרות מאוחרות יותר, תזמון ולולאות אינם כלולים.