حلّ المجتمع

كيفية إصلاح الاستخدام المرتفع لوحدة المعالجة المركزية أثناء تحويل ترميز 4K في Jellyfin على ZimaOS

An Intel N100 Jellyfin case where enabling hardware acceleration made one 4K transcode playable, but CPU usage remained at 95–98% and iGPU use was not conclusively verified.

أبلغ مستخدم لـ ZimaOS يشغّل Jellyfin على نظام Intel N100 بذاكرة RAM سعتها 16GB عن اختلاف واضح في سلوك التشغيل: فقد عملت الوسائط بدقة تصل إلى 1080p بصورة طبيعية، لكن بث 4K يتطلب تحويلًا رفع استخدام وحدة المعالجة المركزية إلى 100% وأصبح متقطعًا بدرجة تعوق المشاهدة. وكان Jellyfin يعمل باستخدام شبكة Host، ولم يكن لدى الخادم معالج رسومات مخصص.

لم يُنتج نقاش المجتمع حلًا نهائيًا واحدًا مؤكدًا. بل تطور إلى تحقيق عملي في التحويل البرمجي، والرسوميات المدمجة من Intel، وVA-API، وتوافق الترميزات، وضبط درجات ألوان HDR، والمكان الصحيح للتحقق من وجود تحويل نشط. وقد فعّل المستخدم الأصلي في النهاية تسريع الأجهزة وتمكن من تشغيل تدفق واحد محوَّل، رغم بقاء استخدام وحدة المعالجة المركزية عند نحو 95–98%.

مشكلة تحويل محتوى 4K الأصلية في Jellyfin

كان الخادم يستخدم معالج Intel N100 وذاكرة بسعة 16GB. وكان Jellyfin يعمل كخادم الوسائط المحلي، كما كان نوع شبكة Docker مضبوطًا على Host. ولم يكن تشغيل محتوى 1080p العادي يمثل مشكلة.

ظهر العطل فقط عندما كان ملف 4K يتطلب تحويلًا. عندها ارتفع استخدام المعالج إلى 100%، وتقطّع التشغيل، وأصبح البث عمليًا غير قابل للمشاهدة. لذلك أراد المستخدم معرفة إعدادات Jellyfin التي يمكنها تحسين أداء التحويل دون بطاقة رسومات مخصصة.

أصبح هذا الاختلاف بين 1080p و4K الدليل المحوري في الردود. وركّز أفراد المجتمع بدرجة أقل على الشبكات والذاكرة، وبدرجة أكبر على ما كان Jellyfin يحوّله، وما إذا كانت الرسوميات المدمجة في N100 مستخدمة، وما إذا كان العميل المحدد يستطيع تشغيل تنسيق المصدر مباشرةً.

لماذا دخل توافق الترميز والعميل في صلب النقاش

وصف goultron تحويل محتوى 4K على نظام من فئة N100 بأنه عبء يتطلب أداءً عاليًا، خصوصًا عندما يعود الخادم إلى استخدام وحدة المعالجة المركزية. وكان نهجه هو تجنب الاحتفاظ بمكتبة 4K وتفضيل الوسائط بترميز H.264، لأنها تُشغَّل مباشرةً على نطاق أوسع من الأجهزة.

كما سلّط الرد الضوء على نقطة عملية مهمة: حتى فيديو H.264 قد يظل يتطلب نوعًا من التحويل. فجهاز الاستقبال، وتنسيقات الصوت التي يدعمها، وسرعة الشبكة المتاحة، كلها عوامل قد تؤثر في مسار التشغيل النهائي. واشتبه goultron في أن تحويل الصوت كان مسؤولًا عن بعض التدفقات التي استمرت في استخدام التحويل، رغم استخدام فيديو H.264.

قارَنوا ذلك بالكثير من محتوى 4K المتاح، والذي يستخدم عادةً H.265/HEVC. وقد لا تتمكن بعض أجهزة التشغيل والتلفزيونات الأصغر من التعامل مباشرةً مع كل ملفات تعريف H.265. وفي هذه الحالات، يجب على Jellyfin تحويل المصدر ليتوافق مع العميل، مما يعيد عبء المعالجة إلى الخادم.

التشخيص الرئيسي لدى gelbuilding: تحقّق من iGPU في N100 أولًا

اعتبر gelbuilding أن سلوك N100 متوقع إذا كان Jellyfin يجري تحويلًا برمجيًا بدقة 4K. وكان تفسيره مباشرًا: يمكن لهذا الحمل أن يدفع وحدة معالجة مركزية صغيرة إلى الاستخدام الكامل، وهو ما يفسر تشغيل الفيديو بدقة 1080p بسلاسة لدى المستخدم الأصلي، وعدم قابلية تحويل 4K للاستخدام.

كان الفحص الأول المقترح هو التحقق مما إذا كان Jellyfin يستخدم فعلًا محرك الوسائط Intel المدمج في N100. لا تحتاج N100 إلى بطاقة رسومات منفصلة لإتاحة iGPU، لكن يجب تفعيل تسريع الأجهزة في Jellyfin، كما يجب أن يتمكن من الوصول إلى ذلك الجهاز من حاويته.

كان مسار الإعدادات المذكور في الرد هو:

  1. افتح واجهة إدارة Jellyfin.
  2. افتح التشغيل.
  3. افتح التحويل.
  4. فعّل تسريع الأجهزة.
  5. اختر VA-API للإعداد الذي نوقش في الموضوع.

كانت النتيجة المتوقعة هي انتقال المعالجة من البرامج على وحدة المعالجة المركزية إلى وحدة Intel iGPU. كما حذّر gelbuilding من أنه لا يمكن توقع أن تتمكن وحدة N100 iGPU من تحويل كل مصدر بدقة 4K بسلاسة. وحددا تحديدًا بعض ملفات HEVC عالية معدل البت بوصفها أحمالًا قد تعود فيها المعالجة إلى البرامج.

صحّح المجتمع مكان التحقق من VA-API

اقترح الرد الأول التحقق من لوحة المعلومات ← النشاط بحثًا عن تسمية H.264 أو HEVC VA-API. اختبر goultron هذه النصيحة في Jellyfin 10.10.7، ووجد أن صفحة Activity تعرض فقط أحداثًا مثل VideoPlayback وVideoPlaybackStopped.

صحّح gelbuilding التعليمات لاحقًا. فلم يكن متوقعًا أن تعرض صفحة Activity ما إذا كان التحويل قد استخدم VA-API أو البرامج. وكان ينبغي التحقق من المعلومات ذات الصلة أثناء إجراء التحويل النشط لبث بدقة 4K ضمن:

  1. لوحة المعلومات
  2. التشغيل
  3. التحويل

يُفترض أن تعرض الجلسة النشطة سطرًا أسفل برنامج الترميز. وتشير تسمية VA-API إلى مشاركة تسريع الأجهزة، بينما تشير تسمية Software إلى أن وحدة المعالجة المركزية تُجري التحويل. وإذا كانت منطقة التحويل فارغة، فقد يكون الملف قيد التشغيل المباشر أو البث المباشر، ما يعني عدم إجراء تحويل نشط للفيديو.

لماذا لم يمنح btop إجابة واضحة للموضوع

حاول goultron أيضًا التحقق من نشاط وحدة معالجة الرسومات المدمجة عبر btop. ولم تظهر وحدة Intel iGPU بوضوح في قسم GPU، رغم تمرير وحدة iGPU نفسها بنجاح إلى Frigate من قبل، وظهور أنها تستخدم الجهاز.

أوضح gelbuilding أن btop كان يعرض بشكل أساسي وحدات معالجة الرسومات المخصصة في سياق ZimaOS هذا، ولذلك قد لا يعرض وحدة معالجة الرسومات المدمجة من Intel حتى عندما تكون نشطة. وبناءً على ذلك، أوصوا باعتبار عرض Transcoding النشط في Jellyfin طريقة التأكيد المباشر.

وأضاف Zima-Jerry لاحقًا أنه يمكن استخدام btop لمراقبة استخدام وحدة معالجة الرسومات. ولم تتم مواءمة هذين التصريحين قبل انتهاء النقاش. لذلك، يدعم النقاش المجتمعي استخدام btop كأداة ملاحظة إضافية، لكن ليس باعتباره الدليل الوحيد؛ إذ تظل معلومات تحويل الترميز النشطة في Jellyfin ضرورية للتمييز بين المعالجة عبر VA-API والمعالجة البرمجية.

إعداد تحويل درجات ألوان HDR الخاص بـ Zima-Jerry

أشار Zima-Jerry إلى إعداد مجتمعي آخر يركّز على تسريع الأجهزة وتحويل درجات ألوان HDR في Jellyfin على Intel N100. وفي تلك الحالة السابقة، أُبلغ عن وجود مشكلة في تحويل درجات الألوان في إصدار Jellyfin المتاح آنذاك في App Store.

كان البديل المقترح هو صورة حاوية Jellyfin من nyanmisaka إلى جانب إعداد YAML مخصص. كان هذا حلاً التفافيًا من المجتمع مرتبطًا بإصدارات Jellyfin وZimaOS المستخدمة آنذاك، لذا ينبغي مقارنته بإصدار App Store الحالي قبل استبدال تثبيت حالي.

إعدادات تسريع الأجهزة وتحويل الترميز في Jellyfin لنظام مزود بمعالج Intel N100
لقطة شاشة من المجتمع: إعدادات تحويل الترميز في Jellyfin التي شاركها Zima-Jerry.
خيارات إضافية لتحويل درجات ألوان HDR وتسريع الأجهزة في Jellyfin، شاركها Zima-Jerry
لقطة شاشة من المجتمع: خيارات إضافية لتسريع الأجهزة وتحويل درجات ألوان HDR.

لم تكن النتيجة تحويل ترميز غير محدود بدقة 4K. وقدّر Zima-Jerry أن الرسومات المدمجة في N100 يمكنها تحويل فيديو Dolby Vision بسلاسة عند نحو 4K بمعدل 30 إطارًا في الثانية أو أقل ضمن الإعدادات المختبرة.

نتيجة تشغيل Jellyfin بعد تطبيق إعدادات تحويل الترميز العتادي الخاصة بـ Intel N100 التي شاركها المجتمع
لقطة شاشة من المجتمع: نتيجة التشغيل المعروضة بعد تطبيق الإعدادات المخصصة.

ما الذي تغيّر بعد أن فعّل المستخدم الأصلي تسريع الأجهزة

بعد مراجعة الردود، فعّل Heimwerkerking تسريع الأجهزة لتحويل الترميز. وأدى ذلك إلى تحسن ملحوظ: إذ أصبح بث واحد على الأقل بعد تحويل ترميزه قابلاً للتشغيل.

كانت معلومات التشغيل النشطة المعروضة في لوحة المعلومات هي 48.7 ميغابت في الثانية MP4 H264 AAC. ومع ذلك، ظل استخدام وحدة المعالجة المركزية بين 95% و98%، لذا ظل المستخدم غير متأكد من أن وحدة معالجة الرسومات المدمجة من Intel كانت تتولى تحويل الفيديو فعليًا.

لم تثبت هذه النتيجة حل المشكلة بالكامل. فقد أظهرت أن تغيير الإعدادات حسّن التشغيل، لكن النقاش ظل يفتقر إلى تصنيف VA-API مؤكد، أو نتيجة FFmpeg كاملة، أو قراءة متسقة لـ iGPU. واقترح الرد الأخير مجددًا مراقبة استخدام وحدة معالجة الرسومات باستخدام btop، ولم يُنشر أي تأكيد لاحق.

ما الذي يثبته هذا النقاش المجتمعي فعليًا

يدعم النقاش بقوة اعتبار تحويل ترميز 4K برمجيًا التفسير الأول لوصول N100 إلى استخدام وحدة المعالجة المركزية بنسبة 100%. كما يثبت مسار تحقق مصححًا: ابدأ تحويل ترميز 4K وافحص الجلسة النشطة ضمن منطقة Playback وTranscoding في Jellyfin بدلًا من سجل Activity.

تضيف الردود عدة حدود تتعلق بعبء العمل. إذ يمكن أن تغير توافقية عميل H.265، وتحويل الصوت، وارتفاع معدل بت المصدر، وإجراء تحويل درجات ألوان HDR، وحاوية Jellyfin المحددة النتيجة. أدى تفعيل VA-API إلى تحسين قدرة المستخدم الأصلي على تشغيل دفق واحد محوَّل الترميز، لكن ظل استخدام وحدة المعالجة المركزية مرتفعًا.

لا يحدد النقاش عددًا عامًا موحدًا للدفقات التي يدعمها N100، ولا يثبت أن وحدة معالجة رسومات Intel Arc مطلوبة. عرض gelbuilding خطوتين تاليتين محتملتين للمستخدمين الذين ما زالوا يحتاجون إلى تحويل 4K مستقر: خفض معدل بت المصدر أو إضافة وحدة معالجة رسومات Intel Arc صغيرة. وانتهى النقاش قبل اختبار أي من الخيارين من قِبل صاحب المنشور الأصلي.

الأسئلة الشائعة من نقاش المجتمع

لماذا عملت دقة 1080p بينما تقطّع تحويل ترميز 4K؟

عزا المجتمع الفرق إلى عبء البرامج الأثقل بكثير الناتج عن حاجة ملف 4K إلى التحويل. وقد وصل N100 الأصلي إلى الاستخدام الكامل لوحدة المعالجة المركزية أثناء هذا المسار.

أين ينبغي التحقق من VA-API في Jellyfin؟

شغّل دفق 4K يفرض تحويل الترميز، ثم افحص الجلسة النشطة ضمن Dashboard وPlayback وTranscoding. وقد تبيّن أن سجل أحداث Activity لا يوفّر التصنيف الضروري VA-API أو Software.

ماذا تعني خلوّ واجهة التحويل النشط من البيانات؟

وفقًا لتصحيح gelbuilding، قد يعني ذلك أن الملف يُشغَّل مباشرةً أو يُبث مباشرةً، وأن تحويل ترميز الفيديو غير نشط حاليًا.

هل أدى تفعيل تسريع الأجهزة إلى حل المشكلة تمامًا؟

لا. جعل ذلك دفقًا واحدًا محوَّل الترميز قابلًا للتشغيل، لكن ظل حمل وحدة المعالجة المركزية المُبلّغ عنه عند 95–98%، وانتهى النقاش من دون تأكيد نهائي بأن iGPU تعامل مع المسار الكامل.

ما الخيارات التي اقترحها المجتمع إذا ظل تشغيل 4K غير مستقر؟

اقترحت الردود تفضيل وسائط H.264 المتوافقة عند الإمكان، وخفض معدل بت مصدر 4K، وتجربة إعداد Jellyfin المخصص الذي شاركه Zima-Jerry، أو إضافة وحدة معالجة رسومات Intel Arc صغيرة لتوفير مسار أكثر قدرة على تحويل الترميز عتاديًا.