কম্পিউটার টিউটোরিয়াল

লিনাক্স দিয়ে নিজস্ব লাইভ ভিডিও স্ট্রিমিং সার্ভার তৈরি করুন

অধিকাংশ লাইভ স্ট্রিমিং টুল ও সাইট ফ্রি, কিন্তু একাউন্ট খুলতে হয়, অনিচ্ছাকৃত তথ্য অনলাইনে দিতে হয়। এছাড়া এডমেসের পিছনে কন্টেন্ট রাখা হয়, জটিল Terms of Service থাকে যেগুলো তারা নিজেরা মানেন না।

অনেকজন লাইভ স্ট্রিমিংয়ের আনন্দ নেন কিন্তু ম্যাস অডিয়েন্সের জন্য কন্টেন্ট পাবলিক করতে চান না। তারা নিজের স্ট্রিম ও কন্টেন্টের ওপর আরও কন্ট্রোল চান। ওপেন-সোর্স সফ্টওয়্যার, যেমন লিনাক্স, এই বাধা দূর করার সেরা সমাধান।

এগিয়ে থেকে চিন্তা করুন

নিজস্ব স্ট্রিমিং সার্ভার সেটআপ করার আগে নিজে থেকে কয়েকটি প্রশ্ন করুন। প্রথম, কী কোয়ালিটির স্ট্রিম চান? কত দর্শক আশা করছেন? স্ট্রিম করা কন্টেন্ট কোথায় স্টোর করবেন? কারা সেটি এক্সেস করবে?

সিস্টেম রিকোয়ারমেন্টও চিন্তার বিষয়। কিন্তু এখানে কোনো কঠোর নিয়ম নেই, তাই এক্সপেরিমেন্ট করে দেখুন আপনার লক্ষ্যের জন্য কী ভালো কাজ করে।

অডিও-ভিডিও স্ট্রিমিং হ্যান্ডল করার প্রোটোকল বেছে নিন। Real-Time Messaging Protocol (RTMP) চমৎকার পছন্দ, তবে WebRTC-जैसे অন্যদেরও আপনার পরিস্থিতিতে ভালো কাজ করতে পারে। RTMP-র ব্রড সাপোর্ট আছে, তাই এখানে RTMP-র ওপর ফোকাস করব।

"লাইভ" স্ট্রিমিং-এ ডिले হওয়া স্বাভাবিক। ভিডিও স্ট্রিম এনকোড, ট্রান্সফার, বাফার, ডিসপ্লে হওয়ার প্রক্রিয়া থেকে গুজরে, তাই স্ট্রিমের অ্যাট্রিবিউটে কিছু টвиক দরকার পড়তে পারে।

লিনাক্স সার্ভার সেটআপ

উবুন্টু লিনাক্স আমার পছন্দ, তাই এখানে সেটি ব্যবহার করব। GUI পছন্দ করলে Ubuntu Desktop নিন।

  • উবুন্টু ইনস্টলার চালু করুন, আপনার প্রয়োজন অনুযায়ী সেটিংস বেছে নিন। সার্ভার হিসেবে ব্যবহার করলে স্ট্যাটিক নেটওয়ার্ক সেটিংস সেট করুন।
  • ইনস্টলেশন পর রিবুট করুন (অটো না হলে)। সিস্টেম বুট হলে উপলব্ধ আপডেট ইনস্টল করুন:
    sudo apt update
    sudo apt upgrade

এখানে Nginx web server ব্যবহার করব। ইনস্টল করুন:

sudo apt install nginx

Nginx মিডিয়া স্ট্রিম হ্যান্ডল করতে RTMP মডিউল প্রয়োজন:

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 রিস্টার্ট করুন:

sudo systemctl restart nginx

স্ট্রিমিং সফ্টওয়্যার সেটআপ

সার্ভার রেডি, এখন স্ট্রিমিং সফ্টওয়্যার সেটআপ। এখানে Open Broadcaster Software (OBS) ব্যবহার করব।

  • OBS সাইট থেকে লিনাক্স বিল্ড ডাউনলোড করুন। সফ্টওয়্যার লঞ্চ করুন, হার্ডওয়্যার অনুযায়ী কনফিগার করুন।
  • Source-এর নিচে + ক্লিক করে স্ট্রিমিং সোর্ড যোগ করুন।
  • টেস্টের জন্য Display Capture বেছে নিন, সোর্ডের নাম দিন।
  • OK ক্লিক করলে OBS আপনার ডেস্কটপ মিরর করবে।
  • File ট্যাব → Settings ক্লিক করুন।

Stream সেকশনে Stream Type: Custom… সিলেক্ট করুন, Server ফিল্ডে নিচের URL দিন:

rtmp://IPaddress/live

IPaddress-র জায়গায় আপনার স্ট্রিমিং সার্ভারের IP দিন।

নিজস্ব Stream Key তৈরি করুন Stream key বক্সে দিন। মনে রাখার মতো কিছু দিন এবং লিখে রাখন। সিকিউরিটির জন্য Use authentication বক্স চেক করে কредেনশিয়াল যোগ করুন।

Apply → OK ক্লিক করুন।

সব কনফিগারেশন হয়ে গেলো। প্রথম স্ট্রিম শুরু করতে Stream Now বাটন চাপুন। সঠিক হলে বাটন Stop Streaming-এ বদলবে। OBS উইন্ডোর নিচে ব্যান্ডউইথ মেট্রিক্স দেখাবে।

নিজে প্রথম দর্শক बनুন

RTMP সাপোর্ট করা অনেক ওপেন-সোর্স মিডিয়া প্লেয়ার আছে, সবচেয়ে জনপ্রিয়: VLC মিডিয়া প্লেয়ার। ইনস্টল ও লঞ্চ করুন, Media ট্যাব → Open Network Stream।

Stream Key হাতে আছে? আপনার স্ট্রিমের পথে Stream Key যোগ করে টাইপ করুন:

rtmp://IPaddress/live/SecretKey

Play ক্লিক করলে আপনার নিজস্ব লাইভ স্ট্রিম দেখতে পাবেন।

অতিরিক্ত ব্যবস্থা

বেসিক সেটআপ হয়ে গেলো। এখন স্ট্রিমিং সার্ভারের এক্সেস সীমিত করা এবং ভিডিও রেকর্ড/সেভ করা—এই দুটো আপনার আগ্রহের বিষয় হতে পারে।

ডিফল্টভাবে কেউ আপনার স্ট্রিম দেখতে পারে। এটি আপনার উদ্দেশ্যের বিপরীত হতে পারে। লিনাক্স ফায়ারওয়াল, .htaccess ফাইল, বা RTMP মডিউলের বিল্ট-ইন অ্যাক্সেস কন্ট্রোল দিয়ে লিমিটেড এক্সেস সেটআপ করুন। আপনার পছন্দ।

এখানে দেওয়া Nginx কনফিগারেশন শুধু স্ট্রিমিং ইনাবল করে, সেভ করে না। স্টোরেজ অপশন যোগ করতে Nginx কনফিগের RTMP সেকশনের নিচে যোগ করুন:

application live {
live on;
record all;
record_path /var/www/html/recordings;
record_unique on;
}

Nginx যাতে লিখতে পারে সেজন্য এক্সিস্টিং পাথ সেট করুন।

এই すべてই উবুন্টু লিনাক্স ওএস দিয়ে লাইভ স্ট্রিমিং সার্ভার সেটআপের জন্য প্রয়োজনীয়। নন-লাইভ মিডিয়া স্ট্রিমিং সার্ভার চাইলে Plex ব্যবহার করুন OBS-এর বদলে।

  1. লিনাক্স VPS-এ CS:GO সার্ভার তৈরির পদ্ধতি

  2. WP Crowdfunding Plugin দিয়ে নিজের ক্রাউডফান্ডিং সাইট তৈরি করুন

  3. প্লেক্স দিয়ে নিজের পারসোনাল মিউজিক স্ট্রিমিং সার্ভিস বানান

  4. Kiwi ইমেজিং সিস্টেম দিয়ে কাস্টম লিনাক্স ডিস্ট্রিবিউশন তৈরি করুন