ภาพ GIF เคลื่อนไหว (.gif)

ข้อกำหนด มาตรฐาน

Graphics Interchange Format (GIF) คือรูปแบบภาพราสเตอร์ที่ใช้พาเลตต์ขนาด 8 บิต พัฒนาโดย CompuServe ซึ่งเป็นที่รู้จักทั่วโลกในการทำให้ภาพแอนิเมชันสั้น ๆ วนซ้ำเป็นที่นิยมบนเว็บยุคแรก

แปลง GIF เป็น MP4

ตัวแปลงจาก GIF เป็น MP4 ฟรีในเบราว์เซอร์ แปลงไฟล์ได้ทันทีบนอุปกรณ์ของคุณ

บีบอัด GIF ออนไลน์

เป็นส่วนตัว - ไฟล์จะไม่ออกจากอุปกรณ์ของคุณ

ตรวจสอบไฟล์และข้อมูลเมตา

ระบบปฏิบัติการและเครื่องมือวิเคราะห์ไฟล์จะระบุไฟล์ GIF โดยการตรวจสอบลำดับไบต์ไบนารีส่วนต้น:

เลือกหรือวางไฟล์ที่นี่

เป็นส่วนตัว - ไฟล์จะไม่ออกจากอุปกรณ์ของคุณ

หรือวาง Ctrl+V
รับประกันความเป็นส่วนตัวโดยไม่มีการส่งข้อมูลผ่านเครือข่าย: อัปโหลด 0 ไบต์ไปยังเซิร์ฟเวอร์ภายนอก การประมวลผลทั้งหมดเกิดขึ้นภายในแซนด์บ็อกซ์ของเบราว์เซอร์ของคุณ

ลายเซ็นส่วนหัวระดับไบต์

ระบบปฏิบัติการและเครื่องมือวิเคราะห์ไฟล์จะระบุไฟล์ GIF โดยการตรวจสอบลำดับไบต์ไบนารีส่วนต้น:

ลายเซ็น HEX (OFFSET 0):

47 49 46 38

การแสดงผลรูปแบบ ASCII: GIF8

มาตรฐาน: ข้อกำหนด CompuServe GIF87a / GIF89a

ข้อมูลจำเพาะทางเทคนิค

สถาปัตยกรรมคอนเทนเนอร์รูปแบบภาพพาเลตต์แบบสตรีมพร้อมส่วนหัวบล็อกและส่วนท้าย (0x3B)
การบีบอัดการบีบอัดพจนานุกรมแบบไม่สูญเสียข้อมูล Lempel-Ziv-Welch (LZW)
การจัดลำดับไบต์ลิตเติลเอนเดียน (Little-Endian) สำหรับขนาดแคนวาสและตัวหน่วงเวลา
พื้นที่สีพาเลตต์แบบจัดทำดัชนี 8 บิต (สูงสุด 256 สีต่อหนึ่งเฟรม)
ช่องสัญญาณและโครงสร้างพาเลตต์แบบจัดทำดัชนีพร้อมความโปร่งใสแบบไบนารี 1 บิต (เปิด/ปิด)
ขนาดสูงสุด65,535 x 65,535 พิกเซล (เลขจำนวนเต็มไร้เครื่องหมายขนาด 2 ไบต์)
ความโปร่งใสความโปร่งใสแบบไบนารี 1 บิต (ดัชนีสีเดี่ยวที่กำหนดให้เป็นความโปร่งใส)
การสตรีมและแบบโปรเกรสซีฟรองรับอัลกอริทึมการสลับบรรทัดแบบ 4 รอบ (Interlacing) ในข้อกำหนดพื้นฐาน

ตารางเปรียบเทียบทางเทคนิค: GIF กับคู่แข่ง

คุณลักษณะทางเทคนิคGIF (ปัจจุบัน)Animated WebPMP4 (H.264)APNG
ขนาดไฟล์ใหญ่มาก (การบีบอัดไม่ดีสำหรับเฟรมวิดีโอ)ขึ้นอยู่กับแอนิเมชันและการตั้งค่าการเข้ารหัสเล็กกว่า GIF 80%-95%ปานกลาง
การรองรับสีสูงสุด 256 สีต่อหนึ่งเฟรม16.7 ล้านสี (Truecolor 24 บิต)16.7 ล้านสี (YUV 4:2:0)16.7 ล้านสี (Truecolor 24 บิต)
ความโปร่งใสไบนารี 1 บิตเท่านั้น (ขอบหยัก)อัลฟาแชนเนลแบบเนียนสนิท 8 บิตเต็มรูปแบบไม่มีความโปร่งใสในตัวอัลฟาแชนเนลแบบเนียนสนิท 8 บิตเต็มรูปแบบ
การรองรับแพลตฟอร์มรองรับอย่างแพร่หลายในแพลตฟอร์มปัจจุบันและรุ่นเก่าหลายชนิดเบราว์เซอร์ปัจจุบันหลายตัวรองรับ แต่ความพร้อมใช้งานแตกต่างกันโปรแกรมเล่นวิดีโอและเบราว์เซอร์หลายตัวรองรับ แต่ความพร้อมใช้งานแตกต่างกันเบราว์เซอร์ปัจจุบันหลายตัวรองรับ แต่ความพร้อมใช้งานแตกต่างกัน

รูปแบบความเสียหายทั่วไปและคู่มือการกู้คืน Hex

แอนิเมชันเล่นได้บางส่วนแล้วค้าง หรือโปรแกรมดูภาพรายงานว่าไฟล์สิ้นสุดกะทันหัน (Unexpected EOF)

สาเหตุหลัก: ไบต์ส่วนท้าย 0x3B (เครื่องหมายอัฒภาค) หายไป เนื่องจากการดาวน์โหลดถูกตัดทอน

การกู้คืน: เพิ่มไบต์ 0x3B ที่ส่วนท้ายของไฟล์โดยใช้ Hex Editor

การวิเคราะห์ความปลอดภัยและเวกเตอร์การโจมตีตัวแยกวิเคราะห์

ไฟล์ GIF มีความเรียบง่ายแต่เคยมีช่องโหว่การโจมตีด้วยบัฟเฟอร์ล้นระหว่างการขยาย LZW และการโจมตีแบบไฟล์ลูกผสม GIFAR

เวกเตอร์การโจมตีที่ทราบ

  • ช่องโหว่การล้นบัฟเฟอร์ LZW ในตัวถอดรหัสแบบเนทีฟรุ่นเก่า
  • การโจมตีแบบ GIFAR Polyglot: การสร้างไฟล์ที่เป็นทั้ง GIF ที่ถูกต้องและไฟล์ Java JAR ที่ถูกต้องในเวลาเดียวกัน เพื่อหลบเลี่ยงตัวกรองการอัปโหลด

แนวทางปฏิบัติที่ดีที่สุดในการป้องกัน: แปลงรหัส GIF แบบเคลื่อนไหวที่ผู้ใช้อัปโหลดเป็น MP4 หรือ WebP แบบเคลื่อนไหวทันทีเพื่อประหยัดแบนด์วิดท์และป้องกันภัยคุกคามแบบ Polyglot

ประวัติความเป็นมาและเหตุการณ์สำคัญ

2006สิทธิบัตรทั่วโลกทั้งหมดที่ครอบคลุมการบีบอัดแบบ LZW หมดอายุลง ทำให้ GIF ตกเป็นสมบัติสาธารณะอย่างสมบูรณ์
1995Netscape 2.0 เปิดตัวบล็อกส่วนขยายแอปพลิเคชัน (Application Extension Block) ที่อนุญาตให้วนซ้ำแอนิเมชันได้ไม่จำกัด
1989CompuServe เผยแพร่ข้อกำหนด GIF89a โดยเพิ่มแอนิเมชันและสีโปร่งใส
1987Steve Wilhite และ CompuServe เปิดตัว GIF87a เพื่อถ่ายโอนกราฟิกสีผ่านโมเด็มโทรศัพท์แบบ Dial-up

ข้อได้เปรียบและจุดเด่นสำคัญ

  • GIF รองรับโดยเบราว์เซอร์และเครื่องมือรูปภาพจำนวนมาก แต่ความเข้ากันได้ขึ้นอยู่กับแพลตฟอร์มและแอป
  • เล่นได้ทันทีโดยไม่ต้องมีการเจรจาตัวแปลงสัญญาณวิดีโอหรือข้อจำกัดด้านลิขสิทธิ์
  • การบีบอัดแบบไม่สูญเสียข้อมูลภายในพาเลตต์ 256 สี

ข้อจำกัดทางเทคนิคและข้อควรพิจารณา

  • จำกัดอย่างเข้มงวดที่พาเลตต์ 256 สี (ทำให้เกิดแถบสีผิดเพี้ยนอย่างรุนแรงบนภาพถ่าย)
  • ขนาดไฟล์ไม่มีประสิทธิภาพอย่างมากเมื่อเทียบกับรูปแบบวิดีโอสมัยใหม่เช่น MP4, WebM หรือ WebP แบบเคลื่อนไหว (มักจะมีขนาดใหญ่กว่า 5 ถึง 10 เท่า)
  • ความโปร่งใสแบบไบนารี 1 บิตทำให้เกิดขอบหยักเป็นพิกเซลบนพื้นหลังที่ไม่ใช่สีขาว (ไม่มีการผสมอัลฟาแชนเนล)

เกร็ดความรู้ทางเทคนิคที่น่าสนใจ

  • Steve Wilhite ผู้สร้าง ได้ออกมาชี้แจงอย่างโด่งดังในปี 2013 ว่าการออกเสียงที่ถูกต้องคือ 'JIF' โดยออกเสียง G เป็นเสียง J
  • แอนิเมชันวนซ้ำไม่ได้เป็นส่วนหนึ่งของข้อกำหนดอย่างเป็นทางการของ CompuServe โดย Netscape ได้เพิ่มบล็อกส่วนขยาย 'NETSCAPE2.0' เข้ามาในปี 1995
  • ในปี 1994 Unisys ประกาศว่าจะบังคับใช้สิทธิบัตรซอฟต์แวร์ LZW อย่างเข้มงวดกับนักพัฒนาที่สร้างเครื่องมือ GIF ซึ่งนำไปสู่การที่ชุมชนโอเพนซอร์สร่วมกันคิดค้นรูปแบบ Portable Network Graphics (PNG) เพื่อเป็นทางเลือกแบบปลอดสิทธิบัตร

คำถามทางเทคนิคที่พบบ่อย

ทำไม GIF แบบเคลื่อนไหวจึงมีขนาดใหญ่กว่าวิดีโอ MP4 มาก?

GIF ถูกออกแบบในปี 1987 ให้เป็นรูปแบบภาพนิ่ง ขาดแนวคิดการบีบอัดวิดีโอสมัยใหม่ เช่น เวกเตอร์การเคลื่อนไหวระหว่างเฟรม, แมโครบล็อก และการเข้ารหัสทำนายเชิงเวลา โดยจะจัดเก็บทุกเฟรมเป็นภาพราสเตอร์อิสระเต็มรูปแบบ ส่งผลให้มีขนาดไฟล์ที่ใหญ่มาก

ลดขนาดไฟล์ GIF ได้อย่างไร

คุณสามารถลดจำนวนสีในพาเลตต์, ลดอัตราเฟรม (เช่น จาก 30 fps เหลือ 15 fps), ลดขนาดพิกเซล หรือแปลงไฟล์เป็นรูปแบบ WebP หรือ MP4 แบบเคลื่อนไหวสมัยใหม่

GIF รองรับเสียงหรือแทร็กเสียงหรือไม่?

ไม่รองรับ ข้อกำหนด CompuServe GIF ออกแบบมาเฉพาะสำหรับเฟรมภาพบิตแมปและการหน่วงเวลา จึงไม่มีโครงสร้างข้อมูลหรือคอนเทนเนอร์สำหรับซิงโครไนซ์สตรีมเสียง แพลตฟอร์มสมัยใหม่ที่ดูเหมือนเล่น “GIF มีเสียง” แท้จริงแล้วกำลังส่งไฟล์วิดีโอ MP4/WebM ที่ปิดเสียงหรือไม่สามารถเปิดเสียงได้

คู่การแปลงไฟล์ GIF ที่เกี่ยวข้อง

GIF เป็น MP4

การแปลง GIF เคลื่อนไหวเป็น MP4 จะเข้ารหัสเฟรมใหม่เป็นวิดีโอ ขนาดไฟล์ สี และลักษณะการเล่นขึ้นอยู่กับอินพุต การตั้งค่าตัวเข้ารหัส และเครื่องเล่นปลายทาง

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 หนึ่งหน้าเพื่อใช้กับสตอรีบอร์ดหรือรายงาน โดยจะไม่รวมเฟรมถัดไป จังหวะเวลา และการวนซ้ำ