Technical Tutorial

شرح HLS: لماذا يتحول الفيديو الخاص بك من ضبابي إلى حاد دون تخزين مؤقت

هل سبق لك أن واجهت هذا: مشاهدة مقطع فيديو في مترو الأنفاق، يبدأ بشكل ضبابي ولكنه فجأة يصبح حادًا دون تخزين مؤقت؟ تزيل هذه المقالة الغموض عن بروتوكول HLS وفهرسة m3u8 وتقنية معدل البت التكيفي (ABR).

31 ديسمبر 2025·6 دقيقة قراءة

هل سبق لك أن واجهت هذا المشهد: أنت تشاهد عرضًا على هاتفك في مترو الأنفاق، وكانت الصورة ضبابية بعض الشيء في البداية، ولكن بعد بضع ثوانٍ، أصبحت حادة وواضحة فجأة، وأصبحت العملية برمتها خالية تمامًا من التأتأة؟

أو هل تساءلت يومًا لماذا يمكن للبث المباشر الحديث أن يدعم ملايين المستخدمين المتزامنين عبر الإنترنت، بدلاً من التخزين المؤقت كما كان الحال قبل عشر سنوات؟

البطل المجهول وراء كل هذا هو إلى حد كبير بروتوكول يسمى HLS (HTTP Live Streaming).

إذا كنت مطورًا، أو مجرد متحمس للتكنولوجيا ومهتم بتكنولوجيا البث، فإن فهم HLS هو خطوتك الأولى في عالم الفيديو.

في هذه المقالة، لن أستعمل مصطلحات غامضة. سأطلعك على الآليات الأساسية لـ HLS: ** فهرسة m3u8 **، ** تقطيع TS **، و ** معدل البت التكيفي (ABR) ** السحري. بحلول نهاية هذه المقالة، ستفهم تمامًا ما تفعله تلك الطلبات السريعة في لوحة الشبكة بالمتصفح.


المنطق الأساسي لـ HLS: كيفية وضع الفيل في الثلاجة؟

HLS المنطق الأساسي: استعارة السوشي الناقل HLS يشبه سوشي الحزام الناقل: يلتقط المشغل لوحات مقاطع الفيديو من الحزام بالترتيب

قبل HLS (مثل عصر Flash)، كان تشغيل الفيديو على الويب يعني غالبًا إنشاء اتصال طويل (مثل RTMP) أو تنزيل ملف MP4 ضخم. كان هذا أشبه بمحاولة ابتلاع بيتزا كاملة دفعة واحدة، فمن السهل الاختناق (عدم كفاية النطاق الترددي) ويصعب هضمها (استخدام الذاكرة العالية).

أسلوب HLS ذكي جدًا: فهو يقطع البيتزا إلى قطع صغيرة.

قدمت Apple بروتوكول HLS في عام 2009، ويمكن تلخيص مبدأ عمله في ثلاث خطوات بسيطة:

  1. التقسيم: لا يرسل الخادم الفيديو بالكامل مباشرةً، ولكنه يقطعه إلى ملفات صغيرة (عادةً بتنسيق .ts) لا يتجاوز طولها بضع ثوانٍ فقط.
  2. الفهرسة: يقوم الخادم بإنشاء ملف “قائمة تشغيل” (ملف .m3u8 الذي تراه غالبًا)، لإخبار اللاعب: “هذه هي القطعة الأولى، وهذه هي القطعة الثانية…”
  3. الاقتراع: يقوم المشغل بتنزيل الفهرس، ثم تنزيل مقاطع الفيديو واحدة تلو الأخرى بالترتيب وتشغيلها.

هذا تمامًا مثل تناول السوشي بالحزام الناقل. لا تحتاج إلى إحضار كل السوشي من المطبخ إلى الطاولة مرة واحدة؛ كل ما تحتاجه هو مشاهدة الحزام الناقل (الفهرس) وأخذ لوحة تلو الأخرى (تنزيل المقاطع). بهذه الطريقة، يقوم HLS بتحويل الوسائط المتدفقة إلى تنزيلات ملفات HTTP عادية، مما يحل مشكلات التوافق وجدار الحماية الضخمة.


مشغل HLS

اختبر رابط M3U8 أو HLS على الإنترنت

الصق رابط البث في مشغل المتصفح وتحقق من التشغيل بدون تثبيت برنامج سطح مكتب.

إزالة الغموض عن .m3u8: “خريطة الكنز” للبث المباشر

إذا قمت بفتح أدوات مطور المتصفح (F12) وقمت بالتصفية بحثًا عن “m3u8” في لوحة الشبكة، فغالبًا ما ترى نوعين من الملفات. وهذا هو بالضبط براعة تصميم HLS.

1. قائمة التشغيل الرئيسية: القائمة

عندما يطلب المشغل مقطع فيديو لأول مرة، فإن ما يحصل عليه عادة هو قائمة تشغيل رئيسية. وهذا يشبه قائمة المطاعم؛ لا يحتوي على بيانات فيديو محددة، ولكنه يخبر المشغل: “لدي النكهات التالية لتختار من بينها”:

  • 1080p HD (يتطلب عرض النطاق الترددي 5 ميجا بت في الثانية)
  • 720p SD (يتطلب عرض النطاق الترددي 3 ميجا بت في الثانية)
  • توفير البيانات بدقة 480 بكسل (يتطلب عرض نطاق ترددي يبلغ 1 ميجابت في الثانية)

2. قائمة تشغيل الوسائط: ترتيب العرض المحدد

بمجرد أن يحدد المشغل دقة معينة (على سبيل المثال، 1080 بكسل)، فإنه سيطلب قائمة تشغيل الوسائط المقابلة. يحتوي هذا الملف على “اللحم” الحقيقي، وهو العناوين المحددة لمقاطع الفيديو.

يبدو ملف .m3u8 النموذجي كما يلي:

#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:10
#EXT-X-MEDIA-SEQUENCE:0
#EXTINF:10.0,
segment0.ts
#EXTINF:10.0,
segment1.ts
#EXTINF:10.0,
segment2.ts
...
  • #EXTINF:10.0: يخبر اللاعب أن المقطع التالي يبلغ طوله 10 ثوانٍ.
  • segment0.ts: هذا هو عنوان التنزيل الحقيقي لملف الفيديو.

هذا هو سر HLS: يقوم المشغل بقراءة هذا الملف النصي باستمرار وتنزيل ملفات .ts الصغيرة المقابلة.


معدل البت التكيفي (ABR): “التطبيق القاتل” الخاص بـ HLS

معدل البت التكيفي: تغيير حارة الطريق السريع يشبه ABR تغيير المسار الذكي: استخدم المسار عالي الدقة عندما تكون الشبكة جيدة، وقم بالتبديل تلقائيًا إلى المسار السلس عندما تكون الشبكة ضعيفة

عودة إلى السؤال الافتتاحي: لماذا يصبح الفيديو واضحًا تلقائيًا؟

ويعود الفضل في ذلك إلى تقنية معدل البت التكيفي (ABR) الخاصة بـ HLS.

تخيل أنك تقود (تشغيل مقطع فيديو).

  • الطريق السريع (Wi-Fi): ظروف الطريق جيدة، ويتحول المشغل تلقائيًا إلى “خط 1080 بكسل”، ويقوم بتنزيل مقاطع عالية الدقة، مما يتيح لك الاستمتاع بجودة الصورة المطلقة.
  • طريق ريفي (شبكة ضعيفة/إشارة 4G ضعيفة): فجأة تصبح الإشارة أسوأ، ولا يمكن مواكبة سرعة التنزيل. إذا أصر على تنزيل مقاطع بدقة 1080 بكسل، فسيتم تخزين الفيديو مؤقتًا وتلعثمًا.
  • ** تغيير المسار تلقائيًا **: يكتشف مشغل HLS الانخفاض في سرعة التنزيل وسيتحول بهدوء إلى “خط 480 بكسل” في المقطع التالي (على سبيل المثال، المقطع الخامس).

النقطة الأساسية هي: تتم محاذاة أجزاء القرارات المختلفة بشكل صارم على المخطط الزمني. يحتوي المقطع الخامس بدقة 1080 بكسل والجزء الخامس بدقة 480 بكسل على نفس الثانية من اللقطات. ولذلك، فإن هذا التبديل ** سلس **. يشعر المستخدم بعدم وضوح الصورة للحظة واحدة فقط، لكن الصوت والحركة لا ينقطعان.

ولهذا السبب لا يزال بإمكان Netflix أو YouTube السماح لك بمشاهدة الأفلام بسلاسة في ظل ظروف الشبكة غير المستقرة.


إذا كانت HLS جيدة جدًا، فلماذا يوجد زمن انتقال في البث المباشر؟

ربما لاحظت أنه عند مشاهدة مباراة كرة قدم مباشرة، يهتف جارك لتسجيل هدف بينما لا يزال اللاعبون على شاشتك يراوغون في خط الوسط. عادةً ما تستغرق أحداث البث المباشر HLS زمن استجابة يتراوح بين 10 إلى 30 ثانية.

يعد هذا “أثرًا جانبيًا” لبنية HLS.

لضمان السلاسة، يحتاج المشغل عادةً إلى تخزين 3 مقاطع على الأقل قبل بدء التشغيل.

  • على افتراض أن كل قطعة مقطعة إلى 10 ثوانٍ.
  • المخزن المؤقت للمشغل 3 مقاطع = زمن الوصول 30 ثانية.

على الرغم من أن التكنولوجيا الحالية يمكن أن تقطع شرائح أصغر (على سبيل المثال، 2-4 ثواني) أو تستخدم HLS (LL-HLS) بزمن وصول منخفض، مقارنة ببروتوكولات “الدفع” مثل UDP/RTMP، فإن وضع “السحب” القائم على الملفات في HLS غير مصمم بطبيعته لزمن استجابة منخفض للغاية.

ميزته تكمن في الاستقرار وليس السرعة.


الخط السفلي

ملخص مزايا HLS HLS ثلاث مزايا رئيسية: التوافق عبر الأجهزة، اختراق جدار الحماية، سهولة استخدام CDN

السبب وراء سيطرة HLS على عالم البث المباشر ليس لأن تقنيتها هي الأكثر تقدمًا، ولكن لأنها الأكثر عملية.

  1. توافق لا مثيل له: من iPhone إلى Android، ومن Chrome إلى أجهزة التلفاز الذكية، تدعم جميع الأجهزة تقريبًا HLS محليًا أو بسهولة شديدة.
  2. اختراق قوي: يعتمد على معيار HTTP (المنفذ 80/443)، وتعامله جدران الحماية على أنه حركة مرور ويب عادية ولن تمنعه.
  3. منخفضة التكلفة: يمكنك توزيع ملفات HLS مباشرةً باستخدام شبكات CDN العادية، دون الحاجة إلى خوادم بث مخصصة باهظة الثمن.

نصيحة للمطورين: إذا كنت تنشئ منصة فيديو حسب الطلب (VOD) أو بثًا مباشرًا غير تفاعلي للغاية (مثل الأحداث الرياضية والحفلات الموسيقية)، HLS هو خيارك الأول. يمكن أن يوفر أفضل تجربة للمستخدم بأقل تكلفة. ولكن إذا كنت تريد إجراء محادثة صوتية في الوقت الفعلي أو بث مباشر للألعاب، فيرجى الانتقال إلى دراسة WebRTC.

آمل أن يساعدك هذا المقال في كشف سر m3u8. في المرة القادمة التي تشاهد فيها مقطع فيديو يتحول من ضبابي إلى واضح، سوف تبتسم عن علم: “آه، لقد ساعدني ABR في تغيير المسار.”

الكاتب: Admin

مقالات ذات صلة

مقالات إضافية مختارة لك عن بث M3U8