بث HTTP المباشر

يعد بروتوكول نقل النص الفائق Live Streaming (المعروف أيضًا باسم HLS ) بروتوكول اتصالات تدفق وسائط يعتمد على بروتوكول نقل النص الفائق يتم تنفيذه بواسطة أبل . يستخدم كجزء من برنامج QuickTime و Safari و OS X و iOS. كما أنها متوفرة في عدة تطبيقات مثل Microsoft Edge و Firefox وبعض إصدارات Google Chrome. الدعم واسع الانتشار في خوادم وسائط البث .
HLS تشبه MPEG-DASH في أنها تعمل من خلال كسر مجرى البث الكلي إلى سلسلة من تنزيلات الملفات الصغيرة القائمة على بروتوكول نقل النص الفائق ، كل تحميل يحمّل جزءًا قصيرًا من مجرى النقل الإجمالي المحتمل غير المحدود. يتم إرسال قائمة من التدفقات المتاحة ، والمشفرة بمعدلات بت مختلفة ، إلى العميل باستخدام قائمة تشغيل M3U موسعة.
استنادًا إلى معايير بروتوكول نقل النص الفائق القياسية ، يمكن لـ بروتوكول نقل النص الفائق Live Streaming أن يجتاز أي جدار ناري أو خادم وكيل يسمح عبر حركة بروتوكول نقل النص الفائق القياسية ، على عكس البروتوكولات المستندة إلى UDP مثل RTP. يسمح هذا أيضًا بعرض المحتوى من خوادم بروتوكول نقل النص الفائق التقليدية وتسليمه عبر شبكات تسليم المحتوى القائمة على بروتوكول نقل النص الفائق المتاحة على نطاق واسع. تتضمن المعيار أيضًا آلية تشفير قياسية وتوزيع مفاتيح آمنة باستخدام بروتوكول نقل النص التشعبي الآمن ، والتي توفر معًا نظام DRM بسيطًا. كما توفر الإصدارات اللاحقة من البروتوكول طريقة خدعة سريعة إلى الأمام والترجيع و لدمج العناوين الفرعية .
قامت تفاح بتوثيق بروتوكول نقل النص الفائق Live Streaming كمسودة إنترنت (إرسال فردي) ، وهي المرحلة الأولى في عملية نشرها كطلب للتعليقات (RFC). اعتبارًا من ديسمبر 2015 ، طلب مؤلفو تلك الوثيقة من محرر الدفق المستقل (ISE) لنشر المستند كملف RFC إعلامي (غير قياسي) خارج عملية إجماع IETF. في أغسطس 2017 ، تم نشر RFC8216 لوصف الإصدار 7 من البروتوكول.

أسلوب البناء

يستخدم HTTP Live Streaming خادم ويب تقليديًا لتوزيع المحتوى السمعي البصري ويتطلب برنامجًا محددًا ليتماشى مع تنسيق الإرسال المناسب في الوقت الفعلي. تتكون بنية الخدمة من:

الموزع

يتم تكوينه بواسطة خادم ويب قياسي ، ويقبل طلبات من العملاء ويقدم جميع الموارد (ملف قائمة التشغيل .m3u8 وملفات مقطع .ts) اللازمة للبث.

العميل

يقوم بطلب وتنزيل جميع الملفات والموارد وتجميعها بحيث يمكن عرضها على المستخدم كفيديو تدفق مستمر. يقوم برنامج العميل بتنزيل ملف الفهرس من خلال عنوان URL ثم ملفات الوسائط المتعددة المتاحة. يقوم برنامج التشغيل بتجميع التسلسل للسماح بعرض مستمر للمستخدم.

الميزات

يوفر HTTP Live Streaming آليات للاعبين للتكيف مع ظروف الشبكة غير الموثوق بها دون التسبب في توقف تشغيل المستخدم المرئي. على سبيل المثال ، في شبكة لاسلكية لا يمكن الاعتماد عليها ، تسمح HLS للاعب باستخدام فيديو منخفض الجودة ، وبالتالي تقليل استخدام النطاق الترددي. يمكن توفير مقاطع فيديو HLS بدرجة عالية من خلال توفير خوادم متعددة لنفس الفيديو ، مما يسمح بمبادلة اللاعب بسلاسة إذا فشل أحد الخوادم.

تكيف

لتمكين لاعب من التكيف مع عرض النطاق الترددي للشبكة ، يتم ترميز الفيديو الأصلي في عدة مستويات جودة متميزة. يخدم الخادم فهرسًا يسمى "قائمة التشغيل الرئيسية" ، من هذه الترميزات ، يطلق عليها "دفق متغير". يمكن للاعب بعد ذلك الاختيار بين مسارات المتغيرات أثناء التشغيل ، وتغييرها ذهابًا وإيابًا بسلاسة مع تغير ظروف الشبكة.

توفر

يمكن لقائمة التشغيل الرئيسية سرد تدفقات المتغير المتكررة التي لها نفس مستوى الجودة ولكن يتم استضافتها بواسطة خوادم مختلفة. يمكّن هذا اللاعب من التبديل إلى خادم آخر لمعدل البت المعين في حالة فشل أحد الخوادم. هذا يمنح درجة عالية من توافر لخدمة تيارات.

ويمكن الجمع بين هذا وبين القدرة على التكيف عن طريق إدراج تدفقات متباينة متعددة لكل مستوى جودة متميز.
movieStream = fs.createReadStream(pathToFile);
 movieStream.on('open', function () {
     res.writeHead(206, {
         "Content-Range": "bytes " + start + "-" + end + "/" + total,
         "Accept-Ranges": "bytes",
         "Content-Length": chunksize,
         "Content-Type": "video/mp4"
     });
     // This just pipes the read stream to the response object (which goes 
     //to the client)
     movieStream.pipe(res);
 });

 movieStream.on('error', function (err) {
     res.end(err);
 });

باستخدام مجزأة MP4

على WWDC2016 أعلنت شركة آبل عن تضمين عنونة النطاق البايت لملفات MP4 المجزأة ، أو fMP4 ، مما يسمح بتشغيل المحتوى في HLS دون الحاجة إلى تعدد إرساله إلى MPEG-2 Transport Stream. نظرت الصناعة في هذا كخطوة نحو التوافق بين HLS و MPEG-DASH.