لماذا يصغّر الانتقال من JPG إلى AVIF حجم الملف؟
5 دقيقة للقراءة
الصورة نفسها بنصف البيانات
حفظت صورة فوتوغرافية بصيغة JPG، ثم حفظت الصورة نفسها بصيغة AVIF. والاثنتان لا تُميَّز إحداهما من الأخرى على الشاشة لكن ملف AVIF أصغر بوضوح. فكيف يحدث هذا؟
الجواب ليس سحرًا بل حصيلة هندسية تزيد على ثلاثين عامًا. وفي هذه المقالة نشرح من أين تأتي كفاءة AVIF، وفي أي الحالات تتضح هذه الكفاءة، وما الذي تضحّي به في المقابل.
ما يفعله JPG
لنفهم JPG أولًا ونعطه حقه، لأنه كان إنجازًا استثنائيًا في زمنه.
فـ JPG يقسّم الصورة إلى مربعات صغيرة ثابتة الحجم. ويفصل بيانات البكسل في كل مربع إلى مكوّنات ترددية — أي أنه، بتعبير مبسط، يجيب رياضيًا عن سؤال «كم في هذا المربع من تدرج ناعم وكم فيه من تفاصيل حادة». ثم يخشّن المكوّنات عالية التردد التي تجد العين البشرية صعوبة في ملاحظتها أو يُسقطها إسقاطًا كاملًا.
ويُضاف إلى ذلك تقليل معلومات اللون تقليلًا أقسى من معلومات السطوع؛ لأن العين أشد حساسية لتغيرات السطوع منها لتغيرات اللون.
وهذه المقاربة تنفع ولا تزال تنفع. لكن لها قيدين أساسيين: أن الكتل ثابتة الحجم، وأن مجموعة الأدوات المتاحة للخوارزمية ضيقة إلى حد بعيد. فقد كان عليها أن تعمل في زمن معقول على حواسيب مطلع التسعينيات.
الفارق الذي جاء به AV1
اشتُق AVIF من قدرة الترميز داخل الإطار في مرمِّز فيديو اسمه AV1. والترميز داخل الإطار هو ضغط إطار من الفيديو ضغطًا مستقلًا دون النظر إلى الإطارات المجاورة إطلاقًا. والصورة الفوتوغرافية هي أيضًا إطار واحد؛ ولذلك يمكنك تطبيق هذه القدرة على ضغط الصور مباشرةً.
والمزايا التي بيد AV1 قياسًا إلى JPG هي:
التقسيم متغير الحجم. فليست الصورة مضطرة إلى الانقسام إلى مربعات ثابتة. فبإمكان معالجة مساحة سماء مستوية بوصفها منطقة واحدة كبيرة، بينما تُقسَّم منطقة وجه كثيفة التفاصيل إلى أجزاء أصغر بكثير. وهذا يعني إنفاق ما تحتاج إليه كل مساحة من بيانات لا أكثر.
ذخيرة تنبؤ أغنى بكثير. فالمرمِّز يحاول التنبؤ بمحتوى منطقة ما من المناطق المجاورة ولا يسجّل سوى الفرق بين التنبؤ والواقع. وبيد AV1 عدد كبير من اتجاهات التنبؤ وأساليبه المختلفة؛ وهو يعثر بالتجريب على أيها يتطلب أقل بيانات. ولا يوجد بحث بهذا المستوى في JPG.
تحويل وترميز إنتروبي أكثر تطورًا. فـ AV1 يستخدم في مرحلة التعبير الرقمي عن الفرق المتبقي تقنيات أحدث وأكفأ كذلك.
أدوات التنعيم. فبإمكان المرمِّز تطبيق عمليات إضافية للتخفيف من حدود الكتل والتشريط الناشئين عن الضغط. وهذا يجعل الصورة تبدو عند معدلات البت المنخفضة أقل «تفككًا» بكثير قياسًا إلى JPG.
والنتيجة الإجمالية هي: أن AVIF عند الجودة البصرية نفسها أصغر بوضوح من JPG في أغلب الأحيان. والنسبة الشائع تداولها وهي النصف تقريبًا تقدير تقريبي؛ والمكسب الحقيقي يتغير تغيرًا جديًا بحسب محتوى الصورة.
علامَ يتوقف حجم المكسب؟
فارق الكفاءة ليس واحدًا في كل صورة.
المحتويات التي يكون الفارق فيها كبيرًا: مساحات الألوان المستوية، والتدرجات الناعمة، ومناطق السماء أو الجدران الواسعة، والنقوش المتكررة، وقلة كثافة التفاصيل. فالتقسيم المتغير في AVIF وآلية التنبؤ فيه يستطيعان قول الكثير ببيانات قليلة جدًا في هذا النوع من المحتوى.
المحتويات التي يضيق الفارق فيها: الضجيج الكثيف، والنسيج الدقيق العشوائي، والصور ذات حبيبات الفيلم، وكثافة التفاصيل العالية جدًا. فالبيانات العشوائية شيء يصعب ضغطه على كل مرمِّز؛ ولا أحد يستطيع اختصار العشوائية.
ولهذا فإن الجواب الصحيح الوحيد لسؤال «كم سأكسب إن انتقلت إلى AVIF» هو التجريب على صورك أنت.
قدرات أخرى في AVIF لا توجد في JPG
الحجم ليس البعد الوحيد للفارق. فـ AVIF يدعم أيضًا أشياء لم يستطع JPG حملها إطلاقًا:
- قناة ألفا. فبإمكانه حمل مناطق شفافة وشبه شفافة؛ وJPG لا يستطيع ذلك.
- العمق اللوني العالي. فهو يدعم 10 و12 bit لكل قناة؛ وJPG محدود بـ 8 bit. وهذا يقلل التشريط في التدرجات الناعمة.
- نطاق لوني واسع وHDR. فبإمكانه حمل النطاق اللوني الواسع الذي تستطيع الشاشات الحديثة عرضه.
- وضع عديم الفقد. فيمكن حفظه عند الحاجة دون إسقاط أي بيانات، لكن يُتخلى في هذه الحالة عن الجزء الأكبر من ميزة الحجم.
لنتحدث عن الثمن
هذه الكفاءة ليست مجانية.
كلفة الترميز. فلأن مرمِّز AVIF يقيّم خيارات أكثر بكثير، يستغرق تحويل صورة إلى AVIF وقتًا أطول بوضوح من تحويلها إلى JPG. وهذا غير ذي أهمية في ملف واحد؛ أما في أرشيف من آلاف الصور فهو زمن ينبغي التخطيط له. وأما فك التشفير، أي جانب العرض، فسريع.
التوافق. وهذا هو الثمن الأساسي. فالمتصفحات الرئيسية الحديثة تدعم AVIF، لكن الأجهزة القديمة وأنظمة التشغيل القديمة وكثيرًا من برامج سطح المكتب وعددًا كبيرًا من نماذج الرفع لا تدعمه. وحين ترسل ملف AVIF بالبريد الإلكتروني يكون احتمال عجز الطرف الآخر عن فتحه احتمالًا حقيقيًا.
ولهذا فإن الممارسة المعيارية عند الانتقال من JPG إلى AVIF هي حفظ النسخ الأصلية والاحتفاظ بنسخة JPG احتياطية عند العرض على الويب. ووسم picture في HTML مصمَّم لهذا الغرض: فينزّل المتصفح ملف AVIF إن كان يدعمه، وينزّل JPG إن كان لا يدعمه.
تنبيه: مصدر مضغوط أصلًا
ملف JPG الذي بين يديك مرّ بضغط مع فقد أصلًا. وحين تحوّله إلى AVIF تكون قد غلّفت هذه الصورة تغليفًا أكفأ، لكن التفاصيل المفقودة لا تعود.
والأهم من ذلك أنك إن أبقيت إعداد الجودة منخفضًا جدًا تراكبت طبقتا الفقد. فقد يظن مرمِّز AVIF أن حدود الكتل التي تركها JPG «تفاصيل حقيقية» فيحاول الحفاظ عليها، أو يطمسها كلها. اعمل بقيمة جودة معقولة؛ فلأن AVIF كفؤ أصلًا ستحصل حتى عندها على مكسب جدي في الحجم.
خلاصة القول
سبب صِغَر AVIF قياسًا إلى JPG ليس ضغطًا أذكى بل ضغطًا أكثر مرونة ويجري حسابًا أكثر. فحين تجتمع أحجام المناطق المتغيرة وذخيرة التنبؤ الواسعة وترميز الإنتروبي الحديث أمكن التعبير عن الجودة البصرية نفسها ببيانات أقل بكثير. وتدفع في المقابل زمن ترميز أطول و— وهو الأهم — دعمًا محدودًا من المنظومة. وهذه المقايضة تستحق عادةً من أجل سرعة الويب؛ ولا تستحق عادةً من أجل مشاركة الملفات.
الأسئلة الشائعة
هل يصير AVIF فعلًا بنصف حجم JPG؟
النسبة التي كثيرًا ما تُذكر وهي النصف تقريبًا تعميم ورقم تقريبي؛ وهي لا تسري على كل صورة. فالمكسب يتوقف إلى حد بعيد على المحتوى: ففي الصور المحتوية على مساحات ألوان مستوية وتدرجات ناعمة وبنى متكررة يكون الفارق شديد الوضوح. أما في الصور الفوتوغرافية المحتوية على ضجيج كثيف ونسيج دقيق وتفاصيل عشوائية فتضيق المسافة بينهما لأن هذا النوع من البيانات محتوى يصعب ضغطه على كل مرمِّز. والسبيل الموثوق الوحيد لرؤية النتيجة القاطعة هو التجريب على صورك أنت.
لماذا يستطيع AVIF إجراء ضغط أفضل من JPG؟
السبب الأساسي هو فارق هندسي يزيد على ثلاثين عامًا بينهما. فـ JPG يستخدم أسلوبًا بسيطًا نسبيًا صُمِّم وفق قدرة المعالجات في زمنه ويقسّم الصورة إلى كتل ثابتة الحجم. أما AVIF فيقوم على الترميز داخل الإطار في مرمِّز الفيديو AV1؛ وبإمكانه تقسيم الصورة إلى مناطق متغيرة الحجم، وتجريب عدد كبير من استراتيجيات التنبؤ لكل منطقة، واختيار أرخص تعبير. وهذه المرونة تتطلب حسابًا أكثر لكنها تنتج في المقابل نتيجة أكثر تراصًّا بكثير.
هل لهذه الكفاءة ثمن؟
نعم، ثمنان. الأول زمن الترميز: فإنتاج AVIF يستغرق وقتًا أطول بوضوح من حفظ الصورة نفسها بصيغة JPG لأن المرمِّز يمسح مجموعة خيارات أوسع بكثير. والثاني وهو الأهم التوافق؛ فلأن AVIF تنسيق حديث لا تستطيع الأجهزة القديمة وأنظمة التشغيل القديمة وكثير من برامج سطح المكتب فتحه. أما عملية فك التشفير في جانب العرض فسريعة، ولا تُواجَه مشكلة هناك.
هل من المنطقي تحويل ملف JPG مضغوط أصلًا إلى AVIF؟
نعم إن كنت ستعرضه على الويب، لأنك تكون قد نقلت الصورة نفسها بعرض نطاق أقل وزادت سرعة الصفحة. لكن عليك ضبط توقعك ضبطًا صحيحًا: فالتفاصيل التي أسقطها JPG سابقًا لا تعود، وكل ما يفعله AVIF هو تغليف ما بقي تغليفًا كفؤًا. كما أنك إن خفضت إعداد الجودة كثيرًا ركب فسادُ AVIF الخاص فوق عيوب JPG الموجودة وساءت النتيجة سوءًا مرئيًا بالعين. والعمل بقيمة جودة معقولة يزيل هذا الخطر.
جرّب ذلك الآن باستخدام JPG → AVIF Dönüştür.
جرّب JPG → AVIF Dönüştür