محوّل الفيديو إلى GIF
حوّل مقطعًا من ملف فيديو إلى صورة GIF متحركة مباشرةً داخل متصفحك — اختر النطاق الزمني ومعدل الإطارات والحجم. لا يُرفَع أي شيء.
258 مشاهدة
العدد التقديري للإطارات: 30
جارٍ إنشاء GIF…
تعذّرت قراءة الفيديو، أو أن متصفحك لا يدعمه.
لماذا يُبنى GIF من إطارات منفصلة، لا "فيديو مضغوط"
ملف GIF المتحرك ليس نسخة مضغوطة من فيديو بالطريقة التي يكون بها ملف MP4 — بل هو تنسيق مختلف جوهريًا وأقدم بكثير: سلسلة من صور ثابتة كاملة، لكل منها لوحة ألوان صغيرة خاصة بها من 256 لونًا، تُعرض واحدة تلو الأخرى بتأخير لكل إطار. حدّ الـ256 لونًا هذا يعود إلى أصول تنسيق GIF عام 1987، حين كان الترميز اللوني بـ8 بتات (256 قيمة) هو السقف العملي لأجهزة ذلك العصر، ولم يتغير هذا منذ ذلك الحين — وهذا بالضبط سبب ظهور تدرجات مرئية واضحة أو تنقيط في ملفات GIF ذات المحتوى الفوتوغرافي لا يظهرها تنسيق فيديو أبدًا، ولهذا تُمرِّر هذه الأداة كل إطار عبر عملية من خطوتين: تكميم الألوان (تحليل الألوان الفعلية في الإطار واختيار الـ256 لونًا الأفضل لتمثيله) يتبعه ربط اللوحة (إعادة تعيين كل بكسل إلى أقرب تطابق له في تلك اللوحة المخفَّضة).
لا يمكن استخراج الإطارات من ملف فيديو في متصفح باستخدام واجهة برمجية بسيطة من نوع "اقرأ الإطار التالي"، لأن المتصفحات لا توفر مثل هذه الواجهة لملفات الفيديو العشوائية. بدلًا من ذلك، تستخدم هذه الأداة الحل البديل القياسي: تضبط خاصية currentTime في عنصر الفيديو إلى طابع زمني محدد، وتنتظر حدث seeked في المتصفح لتأكيد أن ذلك الإطار بالضبط قد فُكَّ ترميزه وعُرض فعليًا، ثم ترسم ذلك الإطار الواحد على لوحة رسم (canvas) وتقرأ وحدات البكسل منها. القيام بهذا مرة واحدة لكل إطار خرج، عند طوابع زمنية متساوية التباعد يحددها معدل الإطارات المختار، أبطأ من التشغيل بالوقت الفعلي لكنه يضمن أن كل إطار مُستخرَج دقيق لا مجرد لقطة تقريبية.
يتبادل معدل الإطارات وحجم ملف GIF التأثير بشكل مباشر بطريقة لا يفعلها ضغط الفيديو: لأن كل إطار مفرد صورة شبه كاملة (على عكس التنبؤ بين الإطارات في الفيديو، الذي يخزن فقط ما تغيّر)، فإن مضاعفة معدل الإطارات تضاعف تقريبًا حجم الملف — وهذا سبب تحديد هذه الأداة عمدًا للنطاق العملي عند معدل إطارات متواضع والسماح لك بتصغير أبعاد البكسل — فملف GIF بعرض 360 بكسل عند 10 إطارات في الثانية أصغر بشكل كبير من نفس المقطع عند 640 بكسل و20 إطارًا في الثانية، غالبًا بعامل عشرة أو أكثر.
اختيار إعدادات جيدة للنتيجة
- المقاطع القصيرة (2-5 ثوانٍ) عند 8-12 إطارًا في الثانية تُنتج ملفات GIF بحجم معقول ومظهر سلس؛ المقاطع الأطول أو معدلات الإطارات الأعلى تُكبِّر حجم الملف بسرعة بسبب قيد اللوحة-لكل-إطار الموصوف أعلاه.
- المحتوى ذو مساحات الألوان المسطحة الكبيرة (تسجيلات الشاشة، الرسوم المتحركة البسيطة، الرسوم الكرتونية) يُضغَط كملف GIF أفضل بكثير من اللقطات الفوتوغرافية أو عالية التفصيل، لأن تكميم 256 لونًا من لوحة بسيطة يفقد قدرًا أقل بكثير من تكميم 256 لونًا من تدرج فوتوغرافي كامل.
- كل شيء يحدث محليًا: يُقرأ ملف الفيديو مباشرةً بواسطة عنصر الفيديو في المتصفح ولا يغادر جهازك أبدًا، ويعمل الترميز بالكامل بلغة JavaScript.
- خطوة استخراج الإطارات (البحث + الانتظار + الرسم) أبطأ جوهريًا من تشغيل الفيديو بالوقت الفعلي، لذا سيستغرق مقطع أطول أو معدل إطارات أعلى وقت معالجة أطول بشكل ملحوظ قبل جهوزية ملف GIF، بما يتناسب مع إجمالي عدد الإطارات المطلوبة.
الأسئلة الشائعة
لماذا يبدو ملف GIF بجودة أقل من الفيديو المصدر؟
استخدم تنسيق GIF لوحة ألوان بـ8 بتات (256 لونًا) منذ إنشائه عام 1987، ولم يتغير هذا الحد أبدًا. يُكمَّم كل إطار إلى أفضل 256 لونًا مطابقًا له، وهذا سبب ظهور تدرجات واضحة غالبًا في المحتوى الفوتوغرافي لا يظهرها الفيديو الأصلي المستخدِم لملايين الألوان.
لماذا يُكبِّر معدل الإطارات الأعلى حجم الملف بهذا القدر؟
على عكس ضغط الفيديو الذي يخزن غالبًا فقط ما تغيّر بين الإطارات، يخزن ملف GIF كل إطار كصورة شبه كاملة بلوحة ألوانها الخاصة. مضاعفة معدل الإطارات تضاعف تقريبًا عدد الإطارات الكاملة المخزَّنة، لذا يتوسع حجم الملف بشكل شبه خطي مع عدد الإطارات بدلًا من أن يُلطَّف كما تفعل ترميزات الفيديو.
لماذا يستغرق إنشاء GIF وقتًا أطول بشكل ملحوظ لمقطع أطول؟
لا توفر المتصفحات طريقة لقراءة إطارات الفيديو مباشرةً، لذا تبحث هذه الأداة في الفيديو عن كل طابع زمني بدقة، وتنتظر تأكيد المتصفح لفك ترميز ذلك الإطار، ثم تلتقطه — دورة بحث-وانتظار واحدة لكل إطار خرج. طلب المزيد من الإطارات يعني المزيد من هذه الدورات، مما يضيف وقت معالجة فعليًا بدلًا من التحويل الفوري.
هل يُرفع ملف الفيديو الخاص بي إلى أي مكان؟
لا. يُحمَّل الفيديو مباشرةً في عنصر فيديو HTML داخل متصفحك، وكل خطوة معالجة — استخراج الإطارات، تكميم الألوان، ترميز GIF — تعمل محليًا بلغة JavaScript. لا يُرسَل أي شيء إلى خادم.
أي نوع من الفيديو المصدر يُضغَط بشكل أفضل إلى GIF؟
المحتوى ذو مساحات الألوان المسطحة الكبيرة — تسجيلات الشاشة، الرسوم المتحركة البسيطة، الرسوم الكرتونية — يُضغَط بشكل أفضل بكثير من اللقطات الفوتوغرافية أو عالية التفصيل، لأن لوحة الألوان البسيطة تفقد تفاصيل أقل بكثير عند تقليصها إلى 256 لونًا مقارنة بتدرج فوتوغرافي كامل.
أدوات مشابهة
الإبلاغ عن مشكلة
محوّل الفيديو إلى GIF
التعليقات
لا توجد تعليقات بعد — كن أول من يكتب تعليقًا!