اپنے ویڈیوز یوٹیوب پر XNUMX/XNUMX نشر کریں۔

حال ہی میں، ایک شوق کے طور پر، میں ایک ماہر نفسیات کے دیے گئے لیکچرز کو فلما رہا ہوں جسے میں جانتا ہوں۔ میں فوٹیج میں ترمیم کرتا ہوں اور اسے اپنی ویب سائٹ پر شائع کرتا ہوں۔ ایک ماہ پہلے، مجھے یوٹیوب پر ان لیکچرز کی 24/7 نشریات شروع کرنے کا خیال آیا۔ موضوعی "ٹی وی چینل" کی ایک قسم جو ذاتی ترقی کے لیے وقف ہے۔

میں باقاعدہ نشریات کرنا جانتا ہوں۔ لیکن میں اسے ویڈیو سٹریم کیسے بنا سکتا ہوں؟ تاکہ یہ 24/7 چلتا ہے، لچکدار ہے، اور زیادہ سے زیادہ خود مختار ہے، پھر بھی میرے گھر کے کمپیوٹر پر انحصار نہیں کرتا ہے۔ مجھے یہ معلوم کرنے کی ضرورت تھی۔

اپنے ویڈیوز یوٹیوب پر XNUMX/XNUMX نشر کریں۔

اس کا حل تلاش کرنے میں کئی دن لگے۔ میں نے متعدد فورمز اور مختلف دستورالعمل کا مطالعہ کیا، جن کے بغیر میرا براڈکاسٹ کام نہیں کرتا۔ اور اب جب کہ مذاق کامیاب ہو گیا ہے، مجھے اپنا حل بتانے کی ضرورت محسوس ہوتی ہے۔ اس طرح یہ مضمون سامنے آیا۔

مختصر میں، حتمی فیصلہ مندرجہ ذیل تھا: VPS + ffmeg + bash اسکرپٹذیل میں میں ان اقدامات کی وضاحت کرتا ہوں جو میں نے اٹھائے تھے اور ان خرابیوں کے بارے میں بات کرتا ہوں جن کا مجھے براڈکاسٹ کو منظم کرتے وقت سامنا کرنا پڑا۔

مرحلہ 1 - براڈکاسٹ کہاں سے آئے گا؟

شروع ہی میں یہ طے کرنا ضروری تھا کہ نشریات کہاں سے آرہی ہوں گی، اس کا ذریعہ کہاں ہوگا۔ سب سے پہلی چیز جو ذہن میں آئی وہ تھی… گھر کے کمپیوٹر سےمیں ویڈیوز کو پلے لسٹ میں ڈال سکتا ہوں اور انہیں کسی بھی ویڈیو پلیئر میں چلا سکتا ہوں۔ پھر اسکرین کیپچر کریں اور اسے یوٹیوب پر نشر کریں۔ لیکن میں نے اس اختیار کو تقریباً فوراً مسترد کر دیا کیونکہ اس کے لیے میرے گھر کے کمپیوٹر کو ہر وقت آن رکھنے کی ضرورت ہوگی، جو رات کو بھی پنکھے کی آواز پیدا کرے گا اور بجلی کی کھپت میں اضافہ کرے گا (+100-150 kWh ماہانہ)۔ اس کا مطلب یہ بھی تھا کہ میں براڈکاسٹ کرتے وقت اپنے گھر کا کمپیوٹر استعمال نہیں کر سکتا، کیونکہ براڈکاسٹ پر ماؤس کی کوئی حرکت نظر آئے گی۔

پھر میں دور دیکھنے لگا کلاؤڈ سروسزمیں ایک ریڈی میڈ سروس کی تلاش کر رہا تھا جہاں میں اپنے ویڈیوز اپ لوڈ کر سکوں یا، مثال کے طور پر، یوٹیوب ویڈیوز کے لنکس داخل کر سکوں، اور یہ سب ایک واحد، نان اسٹاپ براڈکاسٹ میں پیک کر دوں۔ لیکن مجھے کوئی مناسب چیز نہ مل سکی۔ شاید میں نے بری طرح تلاش کیا۔ صرف ایک چیز جو میری ضروریات کو پورا کرتی ہے وہ ہے restream.io، ایک ایسی خدمت جو ایک سے زیادہ پلیٹ فارمز پر بیک وقت نشریات کی اجازت دیتی ہے۔ وہ بظاہر آپ کو اپنی ویڈیوز اپ لوڈ کرنے کی اجازت دیتے ہیں۔ لیکن یہ سروس بالکل مختلف مقاصد کے لیے بنائی گئی تھی، اور وہ توقع کرتے ہیں کہ نشریات صرف چند گھنٹے چلیں گی۔ میرا خیال ہے کہ اگر وہ اس سروس کے ذریعے 24/7 نشریات کا اہتمام کر سکتے ہیں، تو اس پر دسیوں، اگر سینکڑوں نہیں، تو ماہانہ ڈالر خرچ ہوں گے۔ اور میں واقعی میں ایک براڈکاسٹ مفت میں یا کم سے کم مالی سرمایہ کاری کے ساتھ منظم کرنا چاہتا تھا۔

یہ واضح ہو گیا کہ نشریات کی بھی ضرورت ہے۔ علیحدہ آلہ یا یہاں تک کہ ایک الگ کمپیوٹر۔ میں راسبیری پائی جیسی چیز پر غور کر رہا تھا۔ زحمت کیوں؟ اس میں کولر نہیں ہے۔ میں ویڈیو کو فلیش ڈرائیو پر ریکارڈ کروں گا، ایتھرنیٹ کیبل لگاؤں گا، اور اسے کہیں محفوظ بیٹھنے اور اسٹریم کرنے دوں گا۔ یہ ایک آپشن تھا۔ لیکن میرے پاس بورڈ یا اس کے ساتھ کوئی تجربہ نہیں تھا، لہذا میں نے اسے بھی مسترد کردیا۔

آخر کار مجھے کچھ بحث ہوئی جہاں وہ تخلیق پر بحث کر رہے تھے۔ اپنا سرور نشریات۔ یہ بالکل وہی نہیں تھا جس کی میں تلاش کر رہا تھا، لیکن مجھے خلاصہ ملا – میں ایک سرور استعمال کر سکتا ہوں! اس بحث میں، انہوں نے VPS + nginx + OBS سیٹ اپ استعمال کرنے کا مشورہ دیا۔ یہ واضح ہو گیا کہ یہ سیٹ اپ میرے لیے بھی کام کر سکتا ہے۔ صرف ایک چیز جس نے مجھے پریشان کیا وہ یہ تھا کہ میں نے پہلے کبھی سرور کا انتظام نہیں کیا تھا، اور میں نے سوچا کہ ایک سرشار سرور پیچیدہ اور مہنگا ہوگا۔ میں نے یہ معلوم کرنے کا فیصلہ کیا کہ بنیادی ترتیب والے سرور کو کرایہ پر لینے میں کتنا خرچ آئے گا اور مجھے خوشگوار حیرت ہوئی۔

اپنے ویڈیوز یوٹیوب پر XNUMX/XNUMX نشر کریں۔

قیمتیں بیلاروسی روبل میں درج ہیں، اور وہ محض مونگ پھلی ہیں۔ سیاق و سباق کے لیے، 8 بیلاروسی روبل تقریباً $3.5، یا 240 روسی روبل ہیں۔ یہ ایک مکمل طور پر فعال کمپیوٹر استعمال کرنے کے قابل ہے جو 24/7 پر ہے اور تیز رفتار انٹرنیٹ تک رسائی رکھتا ہے۔ کسی وجہ سے، یہ دریافت میرے لیے ایک بہت بڑی خوشی تھی، اور میں نے کئی دن ناقابل یقین حد تک خوشی محسوس کرتے ہوئے گزارے، جیسے کسی بچے نے ابھی خلائی راکٹ دریافت کیے ہوں۔ 🙂

اتفاق سے، میں نے پہلی ویب سائٹ کا فائدہ اٹھایا جو اس وقت سامنے آئی جب میں نے "VPS رینٹل" کو گوگل کیا۔ مزید سستی اختیارات ہو سکتے ہیں، لیکن قیمت ٹھیک تھی، اس لیے میں نے دیکھنا چھوڑ دیا۔

سرور بناتے وقت، آپ اس آپریٹنگ سسٹم کا انتخاب کر سکتے ہیں جس پر یہ چلے گا۔ نشریات کو کسی بھی درج کردہ سسٹم پر منظم کیا جا سکتا ہے، اور انتخاب آپ کی ترجیحات اور بجٹ پر مبنی ہونا چاہیے (ایک سرور کے لیے Windows (وہ اضافی فیس مانگتے ہیں)۔ میں نے انتخاب کیا۔ CentOS. صرف اس لیے کہ مجھے اس کے ساتھ پہلے کام کرنے کا کچھ تجربہ تھا۔

اپنے ویڈیوز یوٹیوب پر XNUMX/XNUMX نشر کریں۔

مرحلہ 2 - سرور ترتیب دینا

سرور بنانے کے بعد سب سے پہلے آپ کو SSH کے ذریعے اس سے جڑنا ہے۔ سب سے پہلے، میں نے PuTTy کا استعمال کیا، لیکن پھر میں نے سیکیور شیل ایپ پر سوئچ کیا، جو گوگل کروم میں چلتی ہے۔ میں نے اسے زیادہ آسان پایا۔

پھر میں نے میزبان نام تبدیل کیا، سرور پر ٹائم سنکرونائزیشن ترتیب دی، سسٹم کو اپ ڈیٹ کیا، iptables کے ساتھ گڑبڑ کی… اور بہت سی دوسری چیزیں کیں، لیکن اس لیے نہیں کہ یہ ضروری تھا۔ میں نے صرف سرور قائم کرنے کا لطف اٹھایا اور یہ کرنے کے قابل تھا۔ مجھے یہ پسند ہے جب چیزیں کام کرتی ہیں 🙂

یہاں وہ اقدامات ہیں جو آپ کو اٹھانے کی ضرورت ہے:

  1. EPEL ذخیرہ کو مربوط کریں۔
  2. ایک FTP سرور مرتب کریں (میں نے vsftp کا انتخاب کیا)۔
  3. ffmpeg انسٹال کریں۔

میں احکام کے بارے میں تفصیل میں نہیں جاؤں گا۔ یہ ہدایت زیادہ تصوراتی ہے، جس کا مقصد عمل کے عمومی منصوبے کو بیان کرنا ہے۔ اگر آپ کو کسی بھی مرحلے میں کسی قسم کی مشکلات کا سامنا کرنا پڑتا ہے، تو اسے تلاش کرکے فوری طور پر حل کیا جا سکتا ہے۔CentOS EPEL" یا "کو جوڑیںCentOS ایک FTP سرور انسٹال کرنا۔" اور آپ کو تفصیلی مرحلہ وار ہدایات پہلے لنکس پر مل سکتی ہیں۔

لہذا، جیسا کہ میں نے پہلے لکھا تھا، مجھے VPS + nginx + OBS سیٹ اپ کی ضرورت تھی۔ VPS - ہو گیا۔ لیکن دوسرے نکات پر سوالات اٹھنے لگے۔ OBS ایک نشریاتی پروگرام ہے، اوپن براڈکاسٹر سافٹ ویئر۔ اور یہ صرف اسٹریمز کے ساتھ کام کرتا ہے، یعنی مثال کے طور پر، یہ ویب کیم سے تصویر لیتا ہے اور اسے نشر کرتا ہے۔ یا یہ اسکرین ریکارڈ کرتا ہے۔ یا یہ موجودہ براڈکاسٹ کو کسی اور سائٹ پر ری ڈائریکٹ کرتا ہے۔ لیکن میرے پاس کوئی ندی نہیں ہے۔ میرے پاس صرف ویڈیو فائلوں کا ایک سیٹ ہے جسے اسٹریم میں تبدیل کرنے کی ضرورت ہے۔

میں نے ارد گرد کھودنا شروع کیا اور ffmpeg کے پاس آیا۔ FFmpeg مفت، اوپن سورس لائبریریوں کا ایک سیٹ ہے جو آپ کو مختلف فارمیٹس میں ڈیجیٹل آڈیو اور ویڈیو کو ریکارڈ کرنے، تبدیل کرنے اور اسٹریم کرنے کی اجازت دیتا ہے۔

میں واقعی حیران تھا کہ ffmpeg کتنا کر سکتا ہے۔ یہ ویڈیو سے آڈیو نکال سکتا ہے۔ یہ دوبارہ انکوڈنگ کے بغیر ویڈیو کا ایک ٹکڑا کاٹ سکتا ہے۔ یہ ایک فارمیٹ سے دوسرے فارمیٹ میں بدل سکتا ہے۔ اور بہت کچھ، بہت کچھ۔ آپ اسے کسی فائل کی طرف بھی اشارہ کر سکتے ہیں، یہ اسے ایک سلسلہ میں تبدیل کر دے گا، اور پھر اسے یوٹیوب پر اپ لوڈ کر دے گا۔ بس، سارا سلسلہ مکمل ہو گیا۔ بس جو بچا ہے وہ باریک تفصیلات پر کام کرنا ہے۔

مرحلہ 3 - براڈکاسٹ ترتیب دینا

آئیے یوٹیوب پر ایک براڈکاسٹ بنائیں۔ اس مرحلے پر، ہمیں صرف لنک اور اسٹریم کلید کی ضرورت ہے۔ ذیل میں اسکرین شاٹ میں انہیں سرخ رنگ میں نمایاں کیا گیا ہے۔

اپنے ویڈیوز یوٹیوب پر XNUMX/XNUMX نشر کریں۔

مزید ہم ویڈیو فائلیں سرور پر اپ لوڈ کرتے ہیں، جسے ہم نشر کرنے کا ارادہ رکھتے ہیں۔ دراصل، FTP صرف اس قدم کے لیے درکار ہے۔ اگر آپ کے پاس سرور پر فائلیں اپ لوڈ کرنے کا کوئی اور آسان طریقہ ہے، تو آپ کو FTP سرور قائم کرنے کی ضرورت نہیں ہے۔

ہم سلسلہ کو یوٹیوب پر منتقل کرتے ہیں۔ نشریات شروع کرنے کے لیے، آپ کو کئی صفات کے ساتھ ffmpeg چلانے کی ضرورت ہے۔ یہ سب سے مختصر کمانڈ ہے جس کے ساتھ میں آیا ہوں:

ffmpeg -re -i lecture1.mp4 -f flv rtmp://a.rtmp.youtube.com/live2/%КЛЮЧ_ТРАНСЛЯЦИИ%

ضابطہ کشائی کی خصوصیات-re - اشارہ کرتا ہے کہ فائل کو اسٹریم میں تبدیل کیا جانا چاہئے۔

-i - بتاتا ہے کہ کون سی فائل چلائی جائے۔ یہ ضروری ہے کہ کمانڈ اسی ڈائرکٹری سے چلائی جائے جہاں ویڈیو فائل موجود ہے۔ بصورت دیگر، آپ کو فائل کا ایک مطلق لنک بتانا چاہیے، جیسے /usr/media/lecture1.mp4.

-f - آؤٹ پٹ فائل فارمیٹ کی وضاحت کرتا ہے۔ میرے معاملے میں، ffmpeg میری فائل کو mp4 سے flv میں تبدیل کرتا ہے۔

آخر میں، ہم نشریاتی ترتیبات کے صفحہ پر YouTube سے حاصل کردہ ڈیٹا درج کرتے ہیں۔ اس میں وہ پتہ شامل ہے جس پر ڈیٹا منتقل کیا جانا چاہیے اور براڈکاسٹ کلید تاکہ براڈکاسٹ خاص طور پر آپ کے چینل پر ظاہر ہو۔

اگر آپ نے سب کچھ صحیح طریقے سے کیا ہے، تو اس کمانڈ کو چلانے کے بعد، یوٹیوب اس سلسلہ کو نشر ہوتے دیکھے گا۔ نشریات شروع کرنے کے لیے، صرف YouTube میں "شروع کریں" بٹن پر کلک کریں۔

مرحلہ 4 - خود مختاری شامل کرنا

مبارک ہو! اب آپ جانتے ہیں کہ ویڈیو فائل سے براڈکاسٹ کیسے شروع کیا جائے۔ لیکن یہ 24/7 نشریات کے لیے کافی نہیں ہے۔ یہ ضروری ہے کہ پہلی ویڈیو چلنے کے بعد، اگلی ویڈیو فوراً شروع ہو جائے، اور تمام ویڈیوز ختم ہونے کے بعد، پلے بیک دوبارہ شروع ہو جائے۔

میں مندرجہ ذیل حل لے کر آیا ہوں: ایک .sh فائل بنائیں جس میں میں نے ہر ویڈیو فائل کے لیے ایک کمانڈ لکھا اور بالکل آخر میں اسی اسکرپٹ کو دوبارہ چلانے کے لیے ایک کمانڈ کی وضاحت کی۔ نتیجہ ایک قسم کی تکرار تھا:

Команда 1... (запуск трансляции файла lecture1.mp4)
Команда 2... (запуск трансляции файла lecture2.mp4)
Команда 3... (запуск трансляции файла lecture3.mp4)
bash start.sh

اور، ہاں، اس نے کام کیا۔ اپنے آپ سے خوش ہو کر، میں نے ایک ٹیسٹ براڈکاسٹ شروع کیا اور بستر پر چلا گیا۔

آج صبح ایک ناخوشگوار حیرت میرے منتظر تھی۔ یہ پتہ چلا کہ نشریات صرف چند منٹ تک جاری رہی اور میرے کمپیوٹر کو آف کرنے کے فوراً بعد ختم ہو گئی۔ تحقیقات سے معلوم ہوا کہ اس طرح سے شروع کی گئی کمانڈز اس وقت عمل میں آتی ہیں جب صارف سرور میں لاگ ان ہوتا ہے۔ جیسے ہی میں نے رابطہ منقطع کیا، میرے شروع کردہ کمانڈز میں خلل پڑ گیا۔ ایسا ہونے سے روکنے کے لیے، صرف اس کے ساتھ کمانڈ سے پہلے bash کمانڈ ختم کریں nohupیہ آپ کی موجودگی سے قطع نظر چلنے کے عمل کو چلانے کی اجازت دے گا۔

اسکرپٹ کا آخری کم سے کم ورژن اس طرح لگتا ہے:

ffmpeg -re -i lecture1.mp4 -f flv rtmp://a.rtmp.youtube.com/live2/%КЛЮЧ_ТРАНСЛЯЦИИ%
ffmpeg -re -i lecture2.mp4 -f flv rtmp://a.rtmp.youtube.com/live2/%КЛЮЧ_ТРАНСЛЯЦИИ%
ffmpeg -re -i lecture3.mp4 -f flv rtmp://a.rtmp.youtube.com/live2/%КЛЮЧ_ТРАНСЛЯЦИИ%
nohup bash start.sh $

جہاں start.sh اس اسکرپٹ پر مشتمل فائل ہے۔ یہ فائل اسی ڈائرکٹری میں ہونی چاہیے جس میں ویڈیو فائلز ہیں۔

آخر میں ڈالر کا نشان شامل کرنے سے عمل کو پس منظر میں چلنے کی اجازت ملتی ہے تاکہ آپ اپنی نشریات میں خلل ڈالے بغیر اپنے کنسول کا استعمال جاری رکھ سکیں۔

درج ذیل بونس موصول ہوئے:

  • آپ فائل پلے بیک کو دستی طور پر سوئچ کر سکتے ہیں۔ ایسا کرنے کے لیے، فی الحال چل رہے ffmpeg عمل کو ختم کر دیں۔ یہ فہرست میں اگلی فائل کا خود بخود پلے بیک شروع کر دے گا۔
  • نئی ویڈیوز کو بغیر روکے نشریات میں شامل کیا جا سکتا ہے۔ بس ویڈیو کو سرور پر اپ لوڈ کریں، فائل کو لانچ کرنے کے لیے اسکرپٹ میں کمانڈ شامل کریں، اور اسے محفوظ کریں۔ بس۔ اگلے پلے بیک سائیکل پر، نئی فائل پرانی فائلوں کے ساتھ ساتھ نشر کی جائے گی۔

مرحلہ 5 - ffmpeg کو ترتیب دیں۔

اصولی طور پر، ہم وہاں رک سکتے تھے۔ لیکن میں براڈکاسٹ کو کچھ زیادہ ناظرین کے موافق بنانا چاہتا تھا۔

فرض کریں کہ کوئی براڈکاسٹ میں لاگ ان ہوتا ہے، دیکھنا شروع کرتا ہے، اس سے لطف اندوز ہوتا ہے، اور شروع سے لیکچر دیکھنا چاہتا ہے، لیکن براڈکاسٹ ری وائنڈنگ کی اجازت نہیں دیتا ہے۔ شروع سے لیکچر دیکھنے کے لیے، انہیں میری ویب سائٹ پر جانا ہوگا اور جس لیکچر میں ان کی دلچسپی ہے اس کی ریکارڈنگ ڈاؤن لوڈ کرنی ہوگی۔ لیکن وہ یہ کیسے جانیں گے کہ وہ کس لیکچر میں دلچسپی رکھتے ہیں؟ ویب سائٹ پر پہلے ہی 16 لیکچرز موجود ہیں، اور ہر ہفتے مزید شامل کیے جا رہے ہیں۔ مجھے نہیں لگتا کہ میں بھی، جس نے ان سب کو فلمایا اور اس میں ترمیم کی، یہ معلوم کرنے کے قابل ہو جائے گا کہ یہ ایک بے ترتیب ٹکڑے سے کون سا لیکچر ہے۔ لہذا، ہر لیکچر کو کسی نہ کسی طرح لیبل کرنے کی ضرورت ہے۔

ایڈیٹنگ پروگرام میں سورس ویڈیو فائلوں میں کیپشنز شامل کرنا میرے لیے آپشن نہیں تھا۔ مجھے اس بات کو یقینی بنانے کی ضرورت تھی کہ اصل فائلوں کا استعمال کیا گیا تھا، تاکہ اسٹریمنگ سپورٹ کے لیے میری طرف سے ممکنہ حد تک کم کوشش کی ضرورت ہوگی۔

یہ پتہ چلتا ہے کہ ffmpeg اس میں بھی میری مدد کر سکتا ہے۔ اس کی ایک خاص صفت ہے۔ -vf، جو آپ کو ویڈیو پر متن شامل کرنے کی اجازت دیتا ہے۔ ویڈیو میں متن شامل کرنے کے لیے، کمانڈ میں درج ذیل ٹکڑا شامل کریں:

-vf drawtext="fontfile=OpenSans.ttf:text='Лекция 13: Психология эмоций. Как создавать радость?':fontsize=26:fontcolor=white:borderw=1:bordercolor=black:x=40:y=670"

ضابطہ کشائی کے پیرامیٹرزfontfile= - فونٹ فائل کا لنک۔ اس کے بغیر، کیپشن ویڈیو میں شامل نہیں کیا جائے گا۔ سب سے آسان طریقہ یہ ہے کہ فونٹ فائل کو اسی فولڈر میں رکھیں جس میں ویڈیو ہے۔ بصورت دیگر، آپ کو فائل کا پورا راستہ بتانے کی ضرورت ہوگی۔

text= - اصل متن جسے ویڈیو پر رکھنے کی ضرورت ہے۔

fontsize= - پکسلز میں فونٹ کا سائز۔

fontcolor= - فونٹ کا رنگ۔

borderw= - متن کے ارد گرد خاکہ کی موٹائی پکسلز میں (میرے پاس سفید متن ہے جس میں سیاہ خاکہ 1 پکسل موٹا ہے)۔

bordercolor= - خاکہ رنگ.

x= и y= - متن کوآرڈینیٹ۔ نقطہ 0;0 یہ اوپری بائیں کونے میں واقع ہے۔ میں نے کوآرڈینیٹس سیٹ کیے ہیں تاکہ جب ویڈیو ریزولوشن 1280x720 پکسلز ہو تو ٹیکسٹ کو نیچے بائیں کونے میں رکھا جائے۔

ایسا لگتا ہے:

اپنے ویڈیوز یوٹیوب پر XNUMX/XNUMX نشر کریں۔

مرحلہ 6 - نشریاتی معیار کے بارے میں فیصلہ کریں۔

بس، نشریات تیار ہیں۔ FFmpeg نشر ہو رہا ہے، فائلیں چل رہی ہیں، اور نشریات کے لیے میری موجودگی کی ضرورت نہیں ہے۔ یہاں تک کہ ہر لیکچر پر دستخط ہوتے ہیں۔ ایسا لگتا ہے۔

لیکن ایک اور مسئلہ سامنے آیا: میں نے سرور کی کم سے کم ترتیب کا انتخاب کیا، اور یہ سلسلہ کو سنبھال نہیں سکتا۔ سرور کی ترتیب یہ تھی: 1 کور (میرے خیال میں 2.2 گیگا ہرٹز)، 1 جی بی ریم، 25 جی بی ایس ایس ڈی۔ RAM کافی تھی، لیکن CPU کو عملی طور پر مکمل طور پر 100% (اور بعض اوقات 102-103% تک بھی) کر دیا گیا تھا۔ اس کے نتیجے میں ندی ہر چند سیکنڈ میں جم جاتی ہے۔ یہ بدصورت تھا۔

میں صرف ایک زیادہ مہنگی ڈبل کور کنفیگریشن کے ساتھ جا سکتا تھا۔ خوش قسمتی سے، کلاؤڈ ٹیکنالوجیز کے ساتھ، سرور کی ترتیب کو تبدیل کرنا اتنا ہی آسان ہے جتنا کہ چند بٹنوں کو دبانا۔ لیکن میں ننگی کم از کم ترتیب کے ساتھ چیزوں کو آسانی سے چلانا چاہتا تھا۔ میں نے ffmpeg دستاویزات کا مطالعہ شروع کیا، اور ہاں، اس میں ایسی ترتیبات بھی ہیں جو آپ کو سسٹم کے بوجھ کو ایڈجسٹ کرنے کی اجازت دیتی ہیں۔

تصویر کا اعلیٰ معیار دو طریقوں سے حاصل کیا جا سکتا ہے: یا تو پروسیسر کو بھاری بھرکم لوڈ کر کے یا باہر جانے والی ٹریفک کی بڑی مقدار استعمال کر کے۔ لہذا، پروسیسر کی صلاحیت جتنی زیادہ ہوگی، کم بینڈوتھ کی ضرورت ہوگی۔ متبادل طور پر، پروسیسر کو کم لوڈ کیا جا سکتا ہے، لیکن پھر کافی بینڈوتھ کے ساتھ وسیع بینڈوتھ کی ضرورت ہے۔ اگر پروسیسر اور باہر جانے والی بینڈوڈتھ/ٹریفک دونوں ہی محدود ہیں، تو ہموار سلسلہ بندی کو یقینی بنانے کے لیے تصویر کے معیار کو کم کرنا ہوگا۔

میرے سرور میں 10 Mbps بینڈوتھ دستیاب ہے۔ یہ بینڈوڈتھ کافی ہے۔ تاہم، ہر ماہ 1 TB ٹریفک کی حد ہے۔ لہذا، اس حد کے اندر رہنے کے لیے، میرا آؤٹ گوئنگ سٹریم ~300 KB فی سیکنڈ سے زیادہ نہیں ہونا چاہیے، یعنی میرا آؤٹ گوئنگ بٹریٹ 2,5 Mbps سے زیادہ نہیں ہونا چاہیے۔ یوٹیوب، ویسے، اس بٹریٹ پر سلسلہ بندی کی تجویز کرتا ہے۔

ffmpeg سسٹم کے بوجھ کو منظم کرنے کے لیے مختلف طریقے استعمال کرتا ہے۔ یہ اچھی طرح سے دستاویزی ہے۔ یہاںمیں نے دو صفات کا استعمال کرتے ہوئے ختم کیا: -crf и -preset.

مستقل شرح فیکٹر (CRF) - یہ ایک عدد ہے جو تصویر کے معیار کو ایڈجسٹ کرنے کے لیے استعمال کیا جاتا ہے۔ CRF کی قدریں 0 سے 51 تک ہوسکتی ہیں، جہاں 0 اصل فائل کا معیار ہے اور 51 بدترین ممکنہ معیار ہے۔ 17 سے 28 تک اقدار کو استعمال کرنے کی سفارش کی جاتی ہے۔ پہلے سے طے شدہ 23 ہے۔ 17 کے گتانک کے ساتھ، ویڈیو بصری طور پر اصل سے مماثل ہوگی، لیکن تکنیکی طور پر ایسا نہیں ہوگا۔ دستاویزات میں یہ بھی بتایا گیا ہے کہ حتمی ویڈیو کا سائز مخصوص CRF کے لحاظ سے تیزی سے تبدیل ہوتا ہے۔ گتانک کو 6 پوائنٹس تک بڑھانے سے آؤٹ پٹ ویڈیو کا بٹ ریٹ دوگنا ہو جائے گا۔

اگر CRF کی مدد سے آپ باہر جانے والی تصویر کا "وزن" منتخب کر سکتے ہیں، تو پھر اس کی مدد سے پیش سیٹ (-پیش سیٹ) آپ اس بات کا تعین کر سکتے ہیں کہ پروسیسر کتنا لوڈ ہو گا۔ اس وصف میں درج ذیل پیرامیٹرز ہیں:

  • ultrafast
  • superfast
  • veryfast
  • faster
  • fast
  • medium - پہلے سے طے شدہ قدر
  • slow
  • slower
  • veryslow

"تیز" پیرامیٹر سیٹ کیا جائے گا، پروسیسر پر بوجھ اتنا ہی زیادہ ہوگا۔

میں نے پہلے ایک پیش سیٹ کا انتخاب کیا جو عام طور پر میرے پروسیسر کی صلاحیتوں کے اندر تھا، اور پھر CRF کا استعمال کرتے ہوئے بوجھ کو ٹھیک بنایا۔ میرے معاملے میں، پیش سیٹ کامل تھا. fast، اور crf کے لیے میں 24 کی قیمت پر طے ہوا۔

حاصل يہ ہوا

بس۔ نشریات شروع کرنے کے لیے میرا آخری حکم یہ تھا:

ffmpeg -re -i lecture1.mp4 -vf drawtext="fontfile=OpenSans.ttf:text='Лекция 1: Жонглирование картинами мира':fontsize=26:fontcolor=white:borderw=1:bordercolor=black:x=40:y=670" -c:v libx264 -preset fast -crf 24 -g 3 -f flv rtmp://a.rtmp.youtube.com/live2/%КЛЮЧ_ТРАНСЛЯЦИИ%

یہاں بیان کرنے کے لیے صرف دو نکات رہ گئے ہیں:

1) -c:v libx264 - سورس فائل کے ساتھ کام کرنے کے لیے ایک مخصوص کوڈیک کی وضاحت کرنا۔
2) -g 3 - کلیدی فریموں کی تعداد کا واضح اشارہ۔ اس صورت میں، یہ بتاتا ہے کہ ہر تیسرا فریم کلیدی فریم ہونا چاہیے۔ پہلے سے طے شدہ قدر یا تو 5 یا 8 ہے، لیکن YouTube شکایت کرتا ہے اور کم از کم 3 کا مطالبہ کرتا ہے۔

آپ نشریات کا کیا معیار دیکھ سکتے ہیں؟ یہاں.

سرور کا بوجھ حسب ذیل تھا:

اپنے ویڈیوز یوٹیوب پر XNUMX/XNUMX نشر کریں۔

اپنے ویڈیوز یوٹیوب پر XNUMX/XNUMX نشر کریں۔

نگرانی کے اعداد و شمار کی بنیاد پر، یہ واضح ہے کہ پروسیسر کا بوجھ 70% اور 95% کے درمیان اتار چڑھاؤ آتا ہے، اور ہفتے کے دوران سلسلہ کبھی بھی 100% تک نہیں پہنچتا۔ اس کا مطلب ہے کہ پروسیسر ان ترتیبات کے ساتھ کافی ہے۔

ڈسک لوڈ کے بارے میں، میں کہہ سکتا ہوں کہ یہ تقریباً لوڈ نہیں ہے اور ایک باقاعدہ HDD براڈکاسٹنگ کے لیے کافی ہونا چاہیے۔

لیکن باہر جانے والی ٹریفک کی مقدار مجھے پریشان کرتی ہے۔ اس سے پتہ چلتا ہے کہ میرے باہر جانے والے ڈیٹا میں 450 اور 650 KB فی سیکنڈ کے درمیان اتار چڑھاؤ آتا ہے۔ ایک ماہ کے دوران، یہ تقریباً 1,8 ٹیرا بائٹس ہے۔ مجھے مزید ڈیٹا خریدنا پڑے گا یا ڈوئل کور کنفیگریشن میں اپ گریڈ کرنا پڑے گا، کیونکہ میں تصویر کے معیار سے سمجھوتہ نہیں کرنا چاہتا۔

***

خلاصہ کرنے کے لیے، شروع سے اس طرح کے نشریات کو ترتیب دینے میں تقریباً 1-2 گھنٹے لگتے ہیں۔ اس کا زیادہ تر وقت ویڈیو کو سرور پر اپ لوڈ کرنے میں صرف کیا جائے گا۔

ایک مارکیٹنگ ٹول کے طور پر، اس طرح کی نشریات شروع کرنے سے کوئی فائدہ نہیں ہوا۔ شاید اگر میں آراء کو بڑھاتا تاکہ یوٹیوب کے الگورتھم اسے اٹھا کر فعال طور پر سفارشات میں دکھاتے، تو کچھ نہ کچھ ہوتا۔ میرے معاملے میں، مسلسل نشریات کے 16 دنوں میں اسے 58 بار دیکھا گیا۔

اوہ اچھا۔ براڈکاسٹ میری ویب سائٹ کے مرکزی صفحہ پر بالکل فٹ بیٹھتا ہے۔ اس نے مجھے فوری طور پر لیکچرر اور خود لیکچرز کے بارے میں اپنی رائے قائم کرنے کا موقع فراہم کیا۔

اور ایک بات۔ یہ ضروری ہے کہ براڈکاسٹ کسی کے کاپی رائٹ کی خلاف ورزی نہ کرے، ورنہ اسے بلاک کر دیا جائے گا۔ میں اپنے نشریات سے پر سکون ہوں کیونکہ میں نے خاص طور پر میوزک انسرٹس کا انتخاب کیا ہے تاکہ میں انہیں آزادانہ طور پر استعمال کر سکوں، اور مواد بنانے والا میرے پاس کمپیوٹر پر بیٹھا ہے اور اس کے مواد کو استعمال کرنے پر میرے لیے کافی خوش ہے۔ 🙂

لیکن اگر آپ کی نشریات کے دوران بیک گراؤنڈ میں ریڈیو چل رہا ہے، یا اگر آپ نے ایڈیٹنگ میں کوئی پسندیدہ ٹریک استعمال کیا ہے، یا اگر آپ نے کسی مشہور میوزک ویڈیو، ٹی وی سیریز، یا فلم سے فوٹیج لی ہے، تو آپ کی نشریات خطرے میں ہیں۔ یہ بھی ضروری ہے کہ آپ کا براڈکاسٹ کم از کم معنی کی ایک کم سے کم مقدار بیان کرے، بصورت دیگر اسے اسپام کے طور پر بلاک کیا جا سکتا ہے۔

***

میرے پاس ابھی کے لیے بس اتنا ہی ہے۔ مجھے امید ہے کہ یہ گائیڈ کسی کے کام آئے گا۔ اگر آپ کے پاس شامل کرنے کے لیے کچھ ہے تو براہ کرم مجھے بتائیں۔ مجھے کوئی اضافہ یا وضاحت سن کر خوشی ہوگی۔

ماخذ: www.habr.com

DDoS تحفظ، VPS VDS سرورز والی سائٹوں کے لیے قابل اعتماد ہوسٹنگ خریدیں۔ DDoS تحفظ، VPS VDS سرورز کے ساتھ قابل اعتماد ویب سائٹ ہوسٹنگ خریدیں۔ ProHoster