مشكلة البث المباشر للفيديو عند المبرمجين وخاصة في php

موضوع البث المباشر الظاهر أنه موضوع كبير لدرجة ان قليل جداً من المحترفين اللي عامل فيه دروس سواء مدفوعة أو مجانية وفي الأغلب بتكون ب node js مع webRTC وطبعاً مشكلة webRTC أنه غير ممكن استخدامه مع الأعداد الكبيرة, ياترى هل يوجد بديل أخر يصلح للبث المباشر لأعداد كتيرة ؟؟؟

أتمني من المحترفين في مجال البرمجة سواء php أو laravel أن يكشف الدليل الصحيح لعمل بث مباشر للفيديو بدون استخدام webRTC وهل ممكن تنفيذ البث بواسطة websocket مباشرة

يرجى الدخول لحسابك أو تسجيل حساب لتستطيع إضافة تعليق
حساب جديد دخول

التعليقات

البث المباشر للفيديو ليس له علاقة بلغات البرمجة، ففي حال كان موقعك مبني بلغة PHP فلا يوجد أي مشكلة عند إضافة تقنية بث مباشر للموقع، فهو يحتاج سيرفر خاص Streaming server ليقوم بعمليات التحويل (Transcoding/Encoding) للفيديو وتسليمه إلى المتصفحات ويمكن بنائه ضمن Linux و Nginx.

أما بالنسبة ل WebRTC طبعاً من الممكن استخدامه مع الأعداد الكبيرة، المشكلة هي في إعدادات السيرفر و التقنيات والموارد المتاحة على السيرفر والتي ستقوم باستخدامها فهي العامل المؤثر الوحيد وليس البروتوكول الذي يتحكم بذلك.أما بالنسبة للحلول البديلة في حال لا تريد استعمال WebRtc:

1- RTMP: يعد مثالياً في حال كنت تريد زمن تأخير قليل نسبياً، ولكنه أصبح قديم وغير مدعوم من قبل المتصفحات و الأجهزة الحديثة كونه يتعمد على Flash.

وعلى الرغم من المساوئ السابقة إلا أنه مازالت العديد من الخدمات تستخدمه حتى الآن نظراً لسهولة استخدامه وإمكانية تحويله إلى بروتوكلات توصيل أخرى لتلائم باقي الأجهزة مثل HLS.

2- HLS: (Http Live Streaming) والذي تم تطويره بواسطة شركة أبل وهو بروتوكول مرن للغاية مقارنة بالبروتوكول السابق ومدعوم من قبل شريحة واسعة من الأجهزة والمتصفحات الحالية، وبإمكانك تقليل زمن التأخير باستخدامه عن طريق استعمال CDN

ومن أهم ميزاته أنه يتكيف مع سرعات الانترنت المختلفة حيث يقوم بقياس سرعة الانترنت للمستخدم المتلقي ويعيّن تلقائياً الجودة المثالية للبث، والذي بدوره يجعل مشاهدة الفيديو ممكناً من أي سرعة اتصال بالانترنت مهما كانت.

للأسف لغة الـphp لن تساعد في موضوع البث المباشر, نعم ستساعد في إنشاء صفحات موقعك وبرمجة الصفحة التي تعرض فيها البث لكنها لن تقوم بعملية نقل او بث الفيديو لأن الـphp تعمل فقط في جهة السيرفر وليس في جهة المستخدم او الواجهة وبالتالي في حالتك عليك الإتجاه نحو لغة مغايرة وتناسب طلبك وفي هذه الحالة أنصحك بـFlex أو Silverlight في إعداد وظبط نظام البث المباشر وبعدها تستطيع العودة لـphp من أجل الربط مع قاعدة البيانات وجلب ما تحتاجه منها