بلاگ

جریان منظم یا همان (OBS) Livestreaming چیست؟

جریان منظم یا همان Livestreaming چیست؟
روش انتقال داده است که هنگام تماشای ویدیو در اینترنت استفاده می شود. این راهی است برای ارائه یک فایل ویدئویی کم در واحد زمان که اغلب از یک مکان ذخیره سازی از راه دور منتقل می شود. با انتقال چند ثانیه از فایل به طور همزمان از طریق اینترنت ، دستگاه های مخاطب میتوانند بخشهای ابتدایی دریافت شده را تماشا کنند و لازم نیست قبل از شروع پخش ، کل فیلم را بارگیری نمایند.
پخش زنده زمانی است که فیلم پخش شده در زمان واقعی از طریق اینترنت ارسال می شود ، بدون اینکه ابتدا ضبط و ذخیره شود. امروزه ، پخش های تلویزیونی ، جریان بازی های ویدئویی و فیلم های رسانه های اجتماعی همه می توانند به صورت زنده پخش شوند.
در مورد تفاوت بین جریان منظم و پخش زنده میتوان تفاوت بین یک سخنرانی از روی متن ویک سخنرانی بداهه را یاد آوری کرد. در گذشته ، محتوا از قبل ایجاد ، ذخیره و سپس به مخاطب منتقل می گردید. ولی اکنون مخاطب در همان لحظه ای که محتوا خلق می شود ، محتوا را دریافت می کند. دقیقاً مثل پخش مستقیم.
اصطلاح پخش زنده معمولاً به پخش مستقیم جریانها در همان لحظه اشاره دارد مثلا داده همزمان از یک مبدا به چندین مقصد به طور همزمان پخش می شوند. فن آوری های ویدئو کنفرانس مانند Skype ، FaceTime و Google Hangouts ، روی پروتکل های ارتباطی در زمان واقعی(RTC- real-time communication) کار می کنند.
چگونه جریان مستقیم در سطح فنی کار می کند؟
اینها اصلی ترین گامهایی است که در پشت صحنه در یک جریان مستقیم انجام می شود:
  • فشرده سازی
  • رمزگذاری
  • تقسیم بندی
  • توزیع شبکه تحویل محتوا (Content delivery network -CDN)
  • حافظه پنهان CDN
  • رمزگشایی
  • پخش ویدیو
  • ضبط ویدیو
-پخش زنده با داده های ویدئویی خام شروع می شود:
اطلاعات بصری که توسط یک دوربین ضبط می شود و در دستگاه محاسباتی که دوربین به آن متصل است قرار می گیرد. این اطلاعات بصری به عنوان داده های دیجیتالی – به عبارت دیگر ، 1 و 0 در عمیق ترین سطح نمایش داده می شود.
-فشرده سازی و رمزگذاری:
در مرحله بعد ، داده های ویدیویی تقسیم شده به صفر و یک ، فشرده و رمزگذاری می شوند. داده ها با از بین بردن اطلاعات بصری اضافی فشرده می شوند. به عنوان مثال ، اگر اولین قاب فیلم شخصی را که در برابر پس زمینه خاکستری صحبت می کند ، نمایش دهد ، پس زمینه خاکستری نیازی به ارائه فریم های بعدی که دارای پیشینه یکسان هستند ، ندارد.
به فشرده سازی ویدیو فکر کنید مانند اضافه کردن یک تکه مبلمان جدید به اتاق نشیمن است. لازم نیست هر بار که صندلی یا میز جانبی جدید اضافه شود ، مبلمان کاملاً جدید خریداری کنید. در عوض می توان طرح اتاق را تقریباً یکسان نگه داشت و فقط یک قطعه را همزمان تغییر داد یا گاهی اوقات تنظیم مجدد بزرگتری را در صورت لزوم انجام داد. به طور مشابه ، لازم نیست که هر فریم یک جریان ویدیویی به طور کامل ارائه شود بلکه فقط قسمت هایی از قاب به قاب بعد تغییر می کنند ، مانند حرکت دهان شخص.
“رمزگذاری” به فرآیند تبدیل داده ها به قالب جدید اشاره دارد. داده های ویدئویی پخش مستقیم در قالب دیجیتالی قابل تفسیر رمزگذاری می شوند که طیف گسترده ای از دستگاه ها آن را تشخیص می دهند. استانداردهای رمزگذاری فیلم مشترک شامل موارد زیر است:
H.264
H.265
VP9
AV1
-تقسیم بندی:
ویدیو شامل اطلاعات دیجیتالی زیادی است ، به همین دلیل بارگیری یک فایل ویدیویی بیشتر از بارگیری یک PDF کوتاه یا یک تصویر طول می کشد. از آنجا که ارسال همه داده های ویدئویی به طور همزمان از طریق اینترنت عملی نخواهد بود ، پخش فیلم به طول چند ثانیه به بخش های کوچکتر تقسیم می شود.
-توزیع و ذخیره CDN:
هنگامی که جریان زنده تقسیم ، فشرده سازی و رمزگذاری شده است (همه اینها فقط چند ثانیه طول می کشد) ، باید در اختیار ده ها یا میلیون ها بیننده قرار گیرد که می خواهند آن را تماشا کنند. برای حفظ کیفیت بالا با حداقل تأخیر در هنگام ارائه جریان به چندین بیننده در مکانهای مختلف ، یک CDN باید آن را توزیع کند.
CDN یک شبکه توزیع شده از سرورها است که محتوا را به نمایندگی از سرور مبدا ذخیره و سرویس می دهد. استفاده از CDN باعث عملکرد سریعتر می شود ، زیرا درخواست های کاربر دیگر نیازی به سفر به سرور مبدا ندارند بلکه در عوض می توانند توسط یک سرور CDN در نزدیکی اداره شوند. رسیدگی به درخواست ها و ارائه محتوا به این روش ، باعث کاهش بار کاری سرور مبدا نیز می شود. سرانجام ، CDN ها امکان ارائه کارآمد محتوا به کاربران در سراسر جهان را فراهم می کنند زیرا سرورهای آنها به جای خوشه بندی در یک منطقه جغرافیایی واحد ، در سراسر جهان قرار دارند.
CDN همچنین هر بخش از جریان زنده را (به طور موقت) ذخیره می کند ، بنابراین بیشتر بینندگان به جای سرور مبدا ، جریان زنده را از حافظه نهان CDN دریافت می کنند. این در واقع باعث می شود جریان زنده به زمان واقعی نزدیک شود حتی اگر داده های ذخیره شده چند ثانیه عقب مانده باشند ، زیرا در زمان سفر            (round-trip time -RTT) به و از سرور مبدا کاهش می یابد.
-رمزگشایی و پخش ویدیو:
CDN جریان زنده را برای همه کاربرانی که در حال تماشای جریان هستند ارسال می کند. هر دستگاه کاربر داده های ویدیویی تقسیم شده را دریافت ، رمزگشایی و فشرده سازی می کند. سرانجام ، یک پخش کننده رسانه در دستگاه کاربر – یا یک برنامه اختصاصی یا یک پخش کننده ویدیو در مرورگر – داده ها را به عنوان اطلاعات بصری تفسیر می کند ، و فیلم پخش می شود.
یک مثال:
فرض کنید الیاس یک جریان زنده را در تلفن هوشمند خود شروع می کند و علی ، که در آن طرف کشور زندگی می کند ، به همراه چند ده نفر دیگر از دوستانشان، به جریان مستقیم تلفن هوشمند خود گوش می کند. الیاس با چرخاندن دوربین تلفن هوشمند روی خودش ، جریان زنده را شروع می کند و می گوید: “سلام ، جهان!”چه اتفاقی می افتد برای آن بخش از فیلم” سلام ، جهان “برای رسیدن به علی در آن طرف کشور ، به همراه سایر افراد در حال تماشای جریان؟
ابتدا تلفن هوشمند الیاس آن بخش کمی از فیلم را رمزگذاری و فشرده می کند. اگر الیاس در حال فیلمبرداری جریان زنده در آشپزخانه خود باشد ، دیوار آشپزخانه وی به عنوان اولین قاب فیلم ضبط می شود ، و فریم های بعدی آن را از آنجا که پس زمینه تغییر نمی کند ، خارج می کنند.
اکنون برنامه الیاس با استفاده از رمزگذاری ارسال می شود, نسخه فشرده شده از گفتن او “سلام, جهان “به CDN ارسال می شود. خوشبختانه برای علی، یکی از سرورهای CDN فقط چند کیلومتر با خانه اش فاصله دارد, بنابراین درخواست تلفن هوشمند وی برای اولین بخش از جریان زنده تقریباً بلافاصله پاسخ داده می شود. سایر بینندگان جریان زنده بسته به موقعیت جغرافیایی خود ممکن است کم و بیش تأخیر نسبت به علی را تجربه کنند.
تلفن علی بخش ویدیو را رمزگشایی می کند و داده های فشرده شده را بازسازی می کند ، به طوری که دیوار آشپزخانه الیاس در هر فریم ظاهر می شود. و سرانجام ، تنها چند ثانیه پس از گفتن الیاس “سلام ، جهان” در آشپزخانه خود در آن طرف کشور ، صورت او در تلفن هوشمند علی ظاهر می شود و علی سلام و احوالپرسی او را می بیند و می شنود.
چرا CDN برای پخش مستقیم مهم است؟
-پهنای باند:
 هر نقطه داده شده در شبکه فقط می تواند داده های زیادی را در یک زمان داشته باشد. این اندازه گیری به عنوان “پهنای باند” شناخته می شود.”اگر یک جریان از داده ها به نقطه ای از شبکه برسند که مقدار داده از ظرفیت آن فراتر رود ، به این” نقطه خفگی ” می گویند زیرا تحویل داده ها خاموش و کند می شود. نقطه خفگی شبیه به نحوه کاهش سرعت ترافیک در هنگام تلاش بسیاری از اتومبیل ها برای استفاده از یک جاده تک خط است.
اگر همه بینندگان یک جریان داده های جریان را از نقطه مبدأ خود دریافت کنند ، سرور مبدا و زیرساخت شبکه اطراف آن به یک نقطه خفه تبدیل می شوند و جریان کند می شود. اما اگر بار اصلی تحویل جریان به CDN منتقل شود ، نقطه خفگی از بین می رود.
-تحویل محتوای جهانی (Global content delivery):
از آنجا که CDN ها در سراسر جهان توزیع می شوند ، آنها قادر به ارائه محتوا به مخاطبان جهانی هستند. سرور مبدا در تهران نمی تواند به طور موثری محتوا را برای مخاطبان در سنپترزبورگ ارائه دهد ، این به ویژه در مورد محتوای سنگین مانند فیلم اتفاق می افتد. با این حال، یک CDN می تواند محتوا را از هر نقطه ای از شبکه خود ارسال و سرویس دهد، به طوری که شخصی در سنپترزبورگ در حال تماشای یک جریان زنده از تهران باشد می تواند به جای اینکه منتظر بماند تا تمام راه را از نیویورک بارگیری کند ، جریان را از سرور سنپترزبورگ دریافت کند.
-تأخیر و کاهش RTT:
ارائه محتوا در سطح جهان با CDN باعث کاهش تأخیر در بینندگان جریان زنده با کاهش RTT (زمان سفر) می شود. به عنوان درخواست بیننده برای یک جریان زنده دیگر نیازی به سفر به منبع اصلی جریان نیست و داده های جریان دیگر نیازی به سفر از مبدا ندارند. این باعث کاهش تاخیرها می شود و به نزدیک نگه داشتن جریان زنده به “زنده” کمک می کند.
-بار کاری:
پاسخ دادن به درخواست های کاربر برای داده ها ، سرور را محاسبه می کند. پاسخ دادن به بسیاری از درخواست های کاربر برای داده های ویدیویی می تواند یک سرور واحد را تحت الشعاع قرار دهد. CDN از ده ها یا صدها سرور استفاده می کند که می توانند بخش اعظم بار کار را از سرور مبدا خارج کرده و آن را ادامه داده و کار کنند.
-ذخیره سازی:
CDN هر بخش ویدیویی از یک جریان زنده را ذخیره می کند. CDN می تواند به جای دریافت داده از سرور مبدا ، بخش ها را از حافظه پنهان تحویل دهد.
-خدمت به یک جریان زنده از حافظه پنهان به نظر می رسد یک تضاد است:
اگر جریان زنده است ، چگونه می توان آن را ذخیره کرد و چند ثانیه بعد آن را سریعتر تحویل داد ؟ در حالی که درست است که یک جریان زنده ذخیره شده در زمان واقعی عقب می ماند ، این هنوز سریعتر از رفتن همه راه به سرور مبدا است. سفر دور آنقدر طول می کشد که جریان عقب تر می ماند. با ذخیره سازی CDN ، کاربران حداقل زمان تاخیر را تجربه می کنند.
چگونه Cloudflare جریان مستقیم را تسریع می کند؟
Cloudflare CDN از تکنیکی به نام شتاب جریان همزمان برای سرعت بخشیدن به تحویل جریان زنده استفاده می کند. برخی از CDN ها تا زمانی که این بخش به طور کامل در حافظه پنهان ذخیره نشود ، نمی توانند یک بخش ویدیویی را به بیش از یک کاربر ارائه دهند. Cloudflare CDN ، با این حال ، قادر است این بخش ها را به طور مستقیم در هنگام بارگیری به چندین بیننده ارائه دهد ، ثانیه های گرانبهای زمان انتظار را برای کاربران کاهش می دهد.
ما دستگاه Lention V90 را به شما پیشنهاد میدهیم!
حتماً به سایت ما به آدرس ذکر شده مراجعه کنید:
https://lention.ir/product-v90/
بازگشت به لیست

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.