قم بإنشاء خادم بث الفيديو المباشر الخاص بك باستخدام Linux

معظم أدوات ومواقع البث المباشر مجانية للجمهور ولكنها غالبًا ما تتطلب منك إنشاء حساب ، مما يوفر معلومات قد لا ترغب في ظهورها على الإنترنت. يمكنهم الاحتفاظ ببعض المحتوى وراء الإعلانات ودمج شروط خدمة مربكة حتى أنهم (Service)قد(can ) لا يلتزمون بأنفسهم. 

هناك من يستمتع بالقدرة على البث المباشر ، لكن ليس لديهم حاجة إلى أن تكون مقاطع الفيديو الخاصة بهم متاحة للجماهير. بدلاً من ذلك ، يفضلون الحصول على مزيد من التحكم في البث والمحتوى الذي ينتجون. البرامج مفتوحة المصدر(Open-source) ، مثل Linux ، هي أفضل إجابة لهذه العقبة.

التفكير في المستقبل(Thinking Ahead)

قبل أن تبدأ في إعداد خادم البث الشخصي الخاص بك ، يجب أن تسأل نفسك بعض الأسئلة. أولاً(First) ، ما جودة البث التي تبحث عنها؟ بعد ذلك(Next) ، كم عدد المشاهدين الذين تتوقع جذبهم؟ أين ستخزن كل المحتوى المتدفق؟ من سيكون له حق الوصول إلى هذا المحتوى؟

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

ستحتاج إلى معرفة البروتوكول الذي سيتعامل مع جزء الصوت والفيديو من البث. يعد بروتوكول المراسلة(Messaging Protocol) في الوقت الفعلي ( RTMP ) خيارًا رائعًا ولكن هناك خيارات أخرى ، مثل WebRTC ، قد تكون أفضل حالًا في وضعك. تحظى RTMP(RTMP) بدعم واسع لذا سنركز على ذلك في هذه المقالة.

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

إعداد خادم Linux(Linux Server Setup)

Ubuntu Linux هو المفضل لدي شخصيًا ، لذا سيكون هذا هو الإصدار المفضل هنا. بالنسبة لأولئك الذين يفضلون خيار واجهة المستخدم الرسومية(GUI) ، يتوفر  Ubuntu Desktop .

  • (Fire)قم بتشغيل مثبت Ubuntu (Ubuntu)واختر الإعدادات التي تناسب احتياجاتك. قد ترغب في تعيين بعض إعدادات الشبكة الثابتة حيث سيتم استخدام هذا كخادم.
  • أعد تشغيل(Reboot) النظام بعد التثبيت إذا لم يقم بذلك تلقائيًا. بمجرد بدء تشغيل نظام Ubuntu ، قم بتثبيت أي تحديثات متوفرة:
sudo apt update
sudo apt upgrade

سنستخدم خادم الويب Nginx لخادم(Nginx web server) البث هذا. قم بتثبيته:

sudo apt install nginx

احصل على وحدة RTMP حتى يتمكن (RTMP)Nginx من التعامل مع تدفق الوسائط الخاص بك:

sudo add-apt-repository universe
sudo apt install libnginx-mod-rtmp

اضبط تكوين Nginx حتى يتمكن من قبول تدفق الوسائط الخاص بك وتقديمه.

sudo nano /etc/nginx/nginx.conf

أضف الكود التالي إلى أسفل ملف التكوين:

rtmp {
        server {
                listen 1935;
                chunk_size 4096;

                application live {
                        live on;
                        record off;
                }
        }
}

احفظ ملف التكوين حيث سنستخدمه لاحقًا لإنشاء خادم دفق يعمل.

أعد تشغيل Nginx(Restart Nginx) بتكوينه الجديد:

sudo systemctl restart nginx

إعداد برامج البث(Streaming Software Setup)

الخادم جاهز ، لذا حان الوقت الآن لإعداد برنامج البث. لنستخدم برنامج Open Broadcaster Software (OBS) في هذه العملية. 

  • توجه إلى الموقع وحدد الإصدار لنظام Linux . بعد بدء تشغيل البرنامج ، قم بتكوين OBS بالإعدادات التي تطابق أجهزتك على أفضل وجه.
  • أضف مصدر دفق عن طريق النقر فوق + أسفل المصدر(Source) مباشرة .

  • من أجل الاختبار ، اختر لقطة شاشة(Display Capture) ، وأدخل اسمًا للمصدر.
  • انقر فوق الزر " موافق(OK) " ، وسيقوم OBS بعكس سطح المكتب الخاص بك.(OBS)
  • بعد ذلك ، انقر فوق علامة التبويب ملف(File) واختر الإعدادات(Settings)

في قسم البث ، حدد تعيين نوع البث على مخصص ...(set Stream Type to Custom…) وأدخل عنوان URL(URL) التالي في حقل الخادم :(Server)

rtmp://IPaddress/live 

بدلاً من IPaddress ، أدخل عنوان IP لخادم البث الخاص بك.

الآن قم بإنشاء مفتاح البث(Stream Key) الخاص بك وأدخله في مربع مفتاح البث . (Stream)اجعله شيئًا تتذكره واكتبه. لمزيد من الأمان ، حدد مربع استخدام المصادقة(Use authentication ) وأضف بيانات الاعتماد المفضلة لديك.

قم بإنهاء التطبيق(Apply) متبوعًا بالزر موافق .(OK)

يجب الآن تكوين كل شيء للبث. لبدء البث الأول ، اضغط على زر البث الآن(Stream Now) . سيتغير الزر إلى إيقاف البث(Stop Streaming) طالما تم كل شيء بشكل صحيح. ستظهر مقاييس النطاق الترددي للبث في الجزء السفلي من نافذة OBS .

كن المشاهد الأول(Be Your First Viewer)

هناك الكثير من مشغلات الوسائط مفتوحة المصدر التي تدعم RTMP ، وأشهرها مشغل وسائط VLC(VLC media player) . قم بتثبيت هذا البرنامج وتشغيله ، وانقر فوق علامة التبويب الوسائط(Media) ، وحدد فتح تدفق الشبكة(Open Network Stream) من القائمة. 

هل لديك (Got)مفتاح البث في(Stream Key) متناول يديك ؟ اكتب مسار البث الخاص بك ، وقم بتضمين مفتاح البث(Stream Key) الذي قمت بإعداده مسبقًا ، حتى نهايته. يجب أن تبدو:

rtmp://IPaddress/live/SecretKey

انقر فوق تشغيل(Play) وستحصل على عرض مباشر للبث الخاص بك.

تدابير إضافية(Additional Measures)

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

بشكل افتراضي ، يمكن لأي شخص مشاهدة البث الخاص بك. قد يتعارض هذا مع الغرض من إنشاء الخادم في المقام الأول. ستحتاج إلى إعداد وصول محدود باستخدام جدار حماية Linux أو (Linux)ملف .htaccess(.htaccess file) أو عناصر التحكم في الوصول المضمنة في وحدة RTMP(built-in access controls in the RTMP module) . هذا الاختيار متروك لك.

تكوين Nginx المتوفر هنا سيمكنك(Nginx) فقط من دفق مقاطع الفيديو ، ولكن ليس من حفظها. لإضافة خيار تخزين ، في تكوين Nginx ، أسفل قسم RTMP مباشرةً ، يمكنك إعداد خيارات تسجيل البث وتوفير موقع حيث تريد حفظ المحتوى الخاص بك وتخزينه. 

قم بتعيين(Set) مسار موجود للسماح لـ Nginx بالكتابة إليه. أدخل التالي:

تطبيق مباشر { (application live {)
             يعيش على؛ (             live on;)
             سجل كل شيء (             record all;)
             record_path /var/www/html/recordings;
             Record_unique في ؛ (             record_unique on;)
}

هذا كل ما تحتاجه عند إعداد خادم بث مباشر باستخدام نظام التشغيل Ubuntu Linux(Ubuntu Linux OS) . إذا كنت مهتمًا أكثر بخادم دفق الوسائط غير المباشر ، فإنني أقترح استخدام Plex بدلاً من OBS.



About the author

أنا عالم كمبيوتر لدي أكثر من 10 سنوات من الخبرة في العمل في مجال المتصفحات و Microsoft Office و onedrive. أنا متخصص في تطوير الويب ، وأبحاث تجربة المستخدم ، وتطوير التطبيقات على نطاق واسع. يتم استخدام مهاراتي من قبل بعض الشركات الرائدة في العالم ، بما في ذلك Google و Facebook و Apple.



Related posts