ينحرف الصوت بعد تحويل الترميز عندما لا يتقدم المخطط الزمني للصوت المُنشأ بالمعدل نفسه تمامًا أو عند حدود الطوابع الزمنية نفسها التي يتقدم بها الفيديو.
قد يخفي التشغيل المباشر المشكلة لأن العميل يستهلك الحاوية الأصلية وتعليمات التوقيت الأصلية فيها، بينما يفك تحويل الترميز، ويعيد أخذ العينات، ويعيد الترميز، ويضع الطوابع الزمنية، ويقسّم، ويعيد دمج أحد المسارين أو كليهما. ابدأ بتحديد ما إذا كان الخطأ إزاحة ثابتة، أو انحرافًا يتزايد تدريجيًا، أو قفزة حدثت بعد التقديم أو الاستئناف. تشير هذه الأنماط إلى أجزاء مختلفة من مسار الوسائط.
صنّف خطأ المزامنة قبل تغيير محوّل الترميز
شغّل الملف من البداية دون تقديم، وسجّل الإزاحة قرب البداية والمنتصف والنهاية. استخدم مشهدًا يتضمن اصطدامًا واضحًا أو صوتًا ساكنًا في الكلام بدلًا من تقديرها من الموسيقى الخلفية.
تشير الإزاحة الثابتة التي تظل كما هي إلى طابع زمني أولي، أو قائمة تحرير، أو تأخير في جهاز الاستقبال، أو إعداد في العميل. أما الفجوة التي تتسع بثبات فتشير إلى اختلاف معدلات الساعة، أو تفسير معدل الإطارات، أو تمديد الصوت، أو إعادة أخذ العينات. وتشير القفزة المفاجئة بعد التقديم أو الاستئناف إلى طوابع زمنية خاصة بالمقاطع وإعادة التشغيل.
كرّر القياس مع تعطيل الترجمة، ومع ضبط إعداد تأخير الصوت اليدوي في العميل على الصفر. إن تصحيح انحراف متغير بإزاحة ثابتة لا يخفي العرض إلا عند طابع زمني واحد.
تأكد من أن الملف الأصلي متزامن
شغّل المصدر محليًا في مشغّل سطح مكتب موثوق، وشغّله مباشرة عبر عميل وسائط متوافق. اختبر نطاق الطوابع الزمنية نفسه الذي يحدث فيه الانحراف أثناء تحويل الترميز.
إذا كان المصدر ينحرف أيضًا محليًا، فافحص ملف الوسائط أو أصلحه قبل تغيير الخادم. وإذا ظل المصدر متزامنًا في كل مكان باستثناء مسار تحويل الترميز، فاحتفظ بالملف والتقط قرار تشغيل خادم الوسائط، وأمر FFmpeg، وإصدار العميل.
استخدم ملفًا ثانيًا بالترميزات نفسها وبمخطط زمني معروف الجودة كمرجع للمقارنة. يشير تعطل عنوان واحد إلى الطوابع الزمنية للمصدر أو البيانات الوصفية للحاوية، بينما يشير تعطل عناوين كثيرة على عميل واحد إلى محوّل ترميز أو أداة تقسيم أو مسار مشغّل مشترك.
حدّد المسارات التي يجري تحويلها فعليًا
تحقق مما إذا كانت الجلسة تجري تحويلًا للصوت فقط مع نسخ مسار الفيديو، أو إعادة دمج دون تحويل للترميز، أو تحويلًا كاملًا للفيديو والصوت. تنشئ هذه المسارات حدودًا زمنية مختلفة.
قد يؤدي تحويل الصوت فقط إلى فقدان المزامنة بعد التقديم. فقد وثّقت إحدى مشكلات Jellyfin فقدان مزامنة الصوت بعد التقديم عند تحويل E-AC-3 أو DTS إلى AAC مع استمرار نسخ مسار الفيديو.
بدّل إلى مسار صوت يدعمه العميل مع إبقاء الفيديو والجودة والترجمة دون تغيير. إذا أصبحت الجلسة تشغيلًا مباشرًا واختفى الانحراف، فركّز على الطوابع الزمنية للصوت، أو إعادة أخذ العينات، أو تحويل القنوات، أو حاوية التسليم المُنشأة، بدلًا من أداء ترميز الفيديو.
يقدّم استعراض ZimaSpace لـ مسار تحويل ترميز الصوت الآلية المرتبطة اللازمة لتفسير هذا الاختبار على مستوى المسار.
اختبر التشغيل من البداية وبعد التقديم وبعد الاستئناف
شغّل ثلاث جلسات مضبوطة باستخدام العميل والملف نفسيهما: تشغيل متواصل من الصفر، وتقديم يتجاوز المنطقة المخزنة مؤقتًا، واستئناف من موضع محفوظ. سجّل بدقة متى تتغير المزامنة.
أُبلغ عن بقاء تشغيل 4K المُحوّل متزامنًا من البداية، ثم انزياحه بعد التحريك، أو تغيير الفصول، أو الاستئناف. والشرط الفارق هو تغيير المخطط الزمني أثناء تحويل الترميز، وليس القدرة الخام على فك ترميز الوسائط.
ويُظهر تقرير منفصل في Jellyfin فقدان مزامنة خاصًا بالاستئناف حتى عندما يكون ملف المصدر نفسه صحيحًا. ويعزل هذا النمط معالجة الاستئناف قبل أي إعادة دمج على مستوى المكتبة.
إذا كان الفشل يحدث فقط عند التقديم أو الاستئناف، فاختبر حاوية تسليم أو مشغّل عميل آخر عندما يتيح التطبيق هذا الخيار. أبقِ التشغيل المتواصل مرجعًا للمقارنة حتى تُنسب النتيجة إلى سلوك إعادة تشغيل الطوابع الزمنية.
افحص توقيت المصدر ومعدل الإطارات وبيانات تمديد الصوت
استخدم أداة لفحص الوسائط لتسجيل معدل إطارات الفيديو وقاعدة الوقت، ومعدل أخذ عينات الصوت، وأوقات بدء المسارات، والمدة، والطوابع الزمنية السالبة، وقوائم التحرير، وأي قيم لتأخير المسار أو تمديده. قارن بين أول وآخر طابع زمني للعرض.
تتضمن بعض مسارات Matroska تعديلًا زمنيًا خطيًا مقصودًا لمطابقة صوت مصدر ذي معدل إطارات مختلف. وتصف إحدى مشكلات Jellyfin مسارات صوتية ذات انحراف خطي تظل قابلة للاستخدام في الحاوية الأصلية، لكن يجري التعامل معها بصورة غير صحيحة أثناء تحويل الترميز.
إذا اختلفت مدة الصوت تناسبيًا عن مدة الفيديو، فأنشئ نسخة اختبار مصححة تعيد أخذ عينات الصوت أو تمدده زمنيًا صراحةً مرة واحدة، ثم أعد دمجه بطوابع زمنية نظيفة. احتفظ بالأصل واختبر عنوانًا واحدًا قبل تطبيق أي إصلاح جماعي.
تحقق من سلوك الطوابع الزمنية لمقاطع HLS أو fMP4
افحص أمر محوّل الترميز بحثًا عن أعلام التقديم، ونسخ الطوابع الزمنية، ومعالجة الطوابع الزمنية السالبة، ونوع مقطع HLS، ومدة المقطع، وما إذا كانت عملية جديدة لتحويل الترميز تبدأ بعد انتقال العميل إلى ما يتجاوز المحتوى المخزن مؤقتًا.
وجد تحقيق في الطوابع الزمنية لدى Jellyfin أن سلوك التقديم غير الدقيق قد يعيد تشغيل بث HLS عند إزاحة عن المخطط الزمني الأصلي. وكان الخلل الأساسي هو عدم محاذاة الطوابع الزمنية المُحوّلة، ما أثر لاحقًا في التوقيت الذي يعرضه العميل.
لا تنسخ أعلام سطر الأوامر من إصدار غير مرتبط إلى حاوية إنتاجية. حدّث الخادم والعميل أو أعدهما إلى إصدار سابق أولًا ضمن المسارات المدعومة، وامسح مقاطع تحويل الترميز القابلة لإعادة الإنشاء فقط، وقارن سلوك MPEG-TS أو fMP4 أو المشغّل الأصلي عندما يوفّر التطبيق هذه الخيارات.
طبّق أصغر إصلاح وأجرِ تحققًا بالمدة الكاملة
استخدم المسار الذي أثبتته الاختبارات: اختر مسار صوت أو عميل متوافقًا، أو تجنّب مسار التقديم أو الاستئناف المتعطل، أو غيّر حاوية البث المدعومة، أو حدّث إصدار خادم الوسائط أو ثبّته، أو طبّع مصدرًا واحدًا يحتوي على بيانات توقيت وصفية معطوبة.
لا تعِد ترميز كل الأفلام لأن تطبيق تلفاز واحدًا ينحرف. ينبغي تصحيح الفشل الخاص بعميل معين في طبقة العميل أو ملف تعريف التشغيل، بينما ينتمي الانحراف الخطي الخاص بالمصدر إلى إصلاح توقيت ذلك الملف.
تحقق من المسار المُصلح من البداية إلى النهاية، ثم كرّر التقديم والاستئناف قرب نقطة الفشل الأصلية. لا تُعد المشكلة محلولة إلا عندما تظل الإزاحة ثابتة طوال المدة، وتحافظ المقاطع المُنشأة على المخطط الزمني المتوقع، وتستمر الإعدادات نفسها بعد إعادة تشغيل العميل وإعادة إنشاء الخادم.
الدعم والنصائح
المزيد للقراءة

هل يمكن لـ Plex مشاركة وحدة معالجة الرسومات (GPU) مع حاوية Docker أخرى؟
يمكن لـ Plex وحاوية أخرى غالبًا الوصول إلى وحدة معالجة الرسومات نفسها، لكن يجب اختبار دعم برنامج التشغيل، وتعيين الجهاز، وحِمل محرّك الفيديو، والذاكرة،...

كيفية معرفة ما إذا كان خطأ Plex ناتجًا عن العميل أم الخادم
أعِد إنتاج العنصر نفسه على عميل آخر، وقارن مسار الجلسة، ثم اجمع أدلة من الخادم فقط بعد أن يحدد النطاق موضع الفشل الفعلي.

كيفية إعداد ذاكرة التخزين المؤقت وموقع التخزين المؤقت لتحويل الترميز في Plex
احمِ حالة Plex الدائمة مع وضع الملفات المؤقتة للتحويل على مساحة تخزين محلية مناسبة، ثم تحقّق من التنظيف والمساحة الحرة وسلوك إعادة التشغيل.

