ไม่มีการอัปโหลด, 100% ในเครื่อง, ไม่มีบัญชี

วิดีโอเป็น GIF

แปลงคลิปสั้นๆ เป็น GIF แบบวนซ้ำ เลือกอัตราเฟรมและความกว้าง, ทุกอย่างทำงานในเบราว์เซอร์ของคุณ

วิดีโอเป็น GIF ทำงานอย่างไร

แปลงคลิปวิดีโอเป็น GIF เคลื่อนไหวโดยตรงในเบราว์เซอร์ของคุณโดยใช้ ffmpeg WebAssembly การแปลงใช้วิธีการ two-pass palette-optimised: pass แรกรัน palettegen filter เพื่อสร้าง 256-colour palette ที่ปรับแต่งให้กับวิดีโอของคุณโดยเฉพาะ และ pass ที่สองรัน paletteuse เพื่อ map ทุกเฟรมไปยัง palette นั้น ผลลัพธ์มีความแม่นยำของสีที่ดีกว่าการแปลง single-pass แบบ naive ที่มักสร้าง banding ที่รุนแรงบน gradients และเฉดผิว

GIF เป็นรูปแบบเก่าที่มีเพดาน 256 สีอย่างแน่นอน ดังนั้นวิดีโอที่มี gradients สวยงาม การปรับสีแบบ cinematic หรือการเคลื่อนไหวกล้องเร็วจะแสดงข้อจำกัดของสีเสมอ เครื่องมือนี้เหมาะสมที่สุดสำหรับ loops สั้น คลิปปฏิกิริยา highlights บทเรียน และ memes ซึ่งเป็นสถานการณ์ที่ GIF เป็นรูปแบบที่คาดหวัง ขนาดไฟล์เติบโตอย่างรวดเร็วตาม resolution และ frame rate ดังนั้นควรตัดคลิปให้เหลือวินาทีที่สำคัญและรักษาความกว้างเอาต์พุตประมาณ 480-640 พิกเซลเพื่อผลลัพธ์ที่จัดการได้

วิธีใช้ วิดีโอเป็น GIF ทีละขั้นตอน

  1. วางหรือเลือกคลิปวิดีโอที่ต้องการแปลง
  2. ตั้งค่า time range หากต้องการเฉพาะส่วนหนึ่งของวิดีโอ
  3. เลือกความกว้างเอาต์พุตเป็นพิกเซล (เล็กกว่า = ไฟล์เล็กกว่า) และ frame rate (10-15 fps โดยทั่วไปเพียงพอ)
  4. คลิก Convert to GIF เพื่อเริ่ม two-pass palettegen/paletteuse pipeline บนอุปกรณ์ของคุณ
  5. ดาวน์โหลด GIF เคลื่อนไหวเมื่อ ffmpeg เสร็จสิ้น

กรณีการใช้งานที่พบบ่อย

  • การสร้าง GIF ปฏิกิริยา loop จากคลิปตลกสั้นเพื่อโพสต์ในแอปแชท
  • การแปลงต้นแบบ UI animation 3 วินาทีเป็น GIF เพื่อฝังใน GitHub issue หรือความคิดเห็นการตรวจสอบการออกแบบ
  • การสร้าง GIF preview feature ของผลิตภัณฑ์สำหรับหน้า README หรือเอกสาร
  • การสร้าง highlight loop บทเรียนสั้นจาก screencast สำหรับโพสต์บล็อก

คำถามที่พบบ่อย

ทำไม GIF ของฉันยังแสดง colour banding แม้จะมีการ palette optimisation?

GIF จำกัดที่ 256 สีต่อเฟรมโดยไม่คำนึงถึงวิธีการ optimisation วิธีการ two-pass palettegen/paletteuse ทำให้ใกล้เคียงกับสีต้นฉบับมากที่สุด แต่วิดีโอที่มี gradients ราบเรียบ โทน HDR หรือ hues หลากหลายจะยังคงแสดง quantisation artefacts ที่มองเห็นได้ การลดขนาดเฟรมลดจำนวนสีที่แตกต่างต่อเฟรมและมักปรับปรุงผลลัพธ์

ฉันสามารถแปลงวิดีโอเป็น GIF แบบออฟไลน์ได้หรือไม่?

ส่วนใหญ่ใช่ ทั้ง palettegen และ paletteuse ffmpeg filter passes ทำงานบนอุปกรณ์ของคุณเสมอ วิดีโอของคุณไม่ออกจากเครื่องเลย ข้อควรระวังเดียวคือเอนจิน ffmpeg มีขนาดค่อนข้างใหญ่และดาวน์โหลดจากเว็บไซต์นี้ในครั้งแรกที่คุณใช้งานเครื่องมือ เมื่อการดาวน์โหลดนั้นและหน้าเว็บโหลดเสร็จสมบูรณ์แล้ว การแปลงจะทำงานได้ทั้งหมดโดยไม่ต้องเชื่อมต่อเครือข่ายเลย

ฉันจะรักษาขนาดไฟล์ GIF ให้สมเหตุสมผลได้อย่างไร?

สามการตั้งค่าควบคุมขนาด GIF: ความกว้างเอาต์พุต (แต่ละแถวพิกเซลมีค่าใช้จ่ายตามสัดส่วน), frame rate (เฟรมต่อวินาทีน้อยกว่าหมายถึงเฟรมทั้งหมดน้อยกว่า), และระยะเวลาคลิป (ทุกวินาทีพิเศษคูณจำนวนเฟรม) GIF ที่กว้าง 480 พิกเซล 12 fps 4 วินาทีเป็นจุดเริ่มต้นทั่วไปสำหรับคลิปที่แชร์ได้ต่ำกว่า 5 MB

GIF จะ loop ตลอดไปหรือเล่นครั้งเดียว?

ffmpeg.wasm เขียน GIF ด้วย NETSCAPE looping extension ที่ตั้งค่าเป็น infinite loops ตามค่าเริ่มต้น ทุกเบราว์เซอร์สมัยใหม่ แอปส่งข้อความ และโปรแกรมดูรูปภาพที่รองรับ GIF เคลื่อนไหวจะ loop ต่อเนื่อง นี่คือคุณสมบัติที่ฝังอยู่ในไฟล์ ต่างจากการ loop MP4 ที่ขึ้นอยู่กับโปรแกรมเล่น

ฉันสามารถแปลง WebM หรือ MKV เป็น GIF ไม่ใช่แค่ MP4 ได้หรือไม่?

ได้ ffmpeg.wasm อ่าน container ใด ๆ ที่สามารถ demux ได้ รวมถึง WebM, MKV, MOV และ AVI เอาต์พุตเป็น GIF เคลื่อนไหวเสมอโดยไม่คำนึงถึง container อินพุต

ทำไมการแปลงที่ยาวหรือความละเอียดสูงถึงใช้เวลานานมาก?

วิธีการ two-pass palette ถอดรหัสทุกเฟรมสองครั้ง: ครั้งหนึ่งเพื่อสร้าง palette และอีกครั้งเพื่อ quantise พิกเซล สำหรับคลิป 1080p 10 วินาทีที่ 24 fps นั่นคือ 480 เฟรมที่ถอดรหัสสองครั้งผ่าน WebAssembly โดยไม่มีการเร่งความเร็วด้วย GPU การลดระยะเวลาคลิป frame rate และ resolution เอาต์พุตเป็นสามวิธีที่มีประสิทธิผลที่สุดในการเร่งการแปลง

ฉันสามารถสร้าง GIF จากวิดีโอบนมือถือได้ไหม?

ได้ สำหรับคลิปสั้น ๆ ที่ความกว้างปานกลาง กระบวนการ palette แบบสองรอบต้องใช้ทรัพยากรมากกว่าการคัดลอกสตรีมแบบธรรมดา ดังนั้นบนมือถือควรจำกัดคลิปให้เหลือไม่กี่วินาทีและความกว้างประมาณ 320-480 พิกเซล ส่วนต้นฉบับที่ยาว กว้าง และมี frame rate สูงควรแปลงบนคอมพิวเตอร์แทน