جریان‌های رسانه مجازی را در Meet Media API مدیریت کنید

جریان‌های رسانه‌ای مجازی، در زمینه کنفرانس WebRTC، جریان‌های رسانه‌ای هستند که توسط یک واحد ارسال انتخابی (SFU) برای جمع‌آوری و توزیع رسانه از چندین شرکت‌کننده تولید می‌شوند. برخلاف جریان‌های رسانه‌ای مستقیم نظیر به نظیر، که در کنفرانس‌های بزرگ شبکه‌ای پیچیده از اتصالات ایجاد می‌کنند، جریان‌های رسانه‌ای مجازی توپولوژی را ساده می‌کنند. SFU جریان‌های رسانه‌ای فردی را از هر شرکت‌کننده دریافت می‌کند و جریان‌های فعال یا مرتبط را به صورت انتخابی به سایر شرکت‌کنندگان ارسال می‌کند و آنها را در یک مجموعه کوچکتر و ثابت از جریان‌های رسانه‌ای مجازی خروجی، مالتی‌پلکس می‌کند.

این رویکرد تعداد جریان‌های ورودی همزمان که هر شرکت‌کننده باید مدیریت کند را کاهش می‌دهد و نیازهای پردازش و پهنای باند را کاهش می‌دهد. هر جریان مجازی می‌تواند شامل رسانه‌های یک شرکت‌کننده در یک زمان باشد که به صورت پویا توسط SFU بر اساس عواملی مانند فعالیت سخنران یا تخصیص ویدیو تنظیم می‌شود. شرکت‌کنندگان این جریان‌های مجازی را دریافت می‌کنند و عملاً یک نمای ترکیبی از کنفرانس را بدون نیاز به مدیریت جریان‌های جداگانه از هر شرکت‌کننده دیگر مشاهده می‌کنند. این انتزاع ارائه شده توسط جریان‌های رسانه مجازی برای مقیاس‌بندی کنفرانس‌های WebRTC به تعداد زیادی از شرکت‌کنندگان بسیار مهم است.

برای دریافت صدا، کلاینت باید دقیقاً سه توصیف رسانه صوتی ارائه دهد که سه فرستنده و گیرنده صوتی محلی ایجاد می‌کند. برای دریافت تصویر، کلاینت باید یک تا سه توصیف رسانه ویدیویی ارائه دهد که آن تعداد فرستنده و گیرنده ویدیویی را تعیین می‌کند.

گیرنده‌ها

هر فرستنده-گیرنده متعلق به کلاینت، یک RtpReceiver اختصاصی و یک «آهنگ رسانه‌ای» اختصاصی دارد که جریان‌های صوتی RTP را از سرورهای Meet دریافت می‌کند.

هر آهنگ یک شناسه منحصر به فرد دارد و جریان متمایز خود از بسته‌های RTP را از آن منبع رسانه خاص دریافت می‌کند. برای مثال، آهنگ A ممکن است صدا را از production-1 دریافت کند در حالی که آهنگ B صدا را از production-2 دریافت می‌کند.

SSRC ها

هر بسته RTP دارای یک مقدار هدر منبع همگام‌سازی (SSRC) است که آن را به یک مسیر خاص متصل می‌کند.

جلسات صوتی از طریق Meet Media API از سه جریان رسانه‌ای مجزا استفاده می‌کنند که هر کدام SSRC استاتیک خود را دارند. پس از ایجاد، این مقادیر SSRC هرگز در طول جلسه تغییر نمی‌کنند.

جریان‌های مجازی

رابط برنامه‌نویسی کاربردی Meet Media از جریان‌های رسانه‌ای مجازی (Virtual Media Streams) استفاده می‌کند. این جریان‌ها در طول جلسه ثابت هستند، اما منبع بسته‌ها ممکن است تغییر کند تا مرتبط‌ترین فیدها را منعکس کند. جریان‌های رسانه‌ای مجازی برای صدا و تصویر یکسان عمل می‌کنند.

منبع مشارکت‌کننده (CSRC) در هدرهای بسته RTP، منبع واقعی بسته‌های RTP را مشخص می‌کند. Meet به هر شرکت‌کننده در کنفرانس، هنگام پیوستن، CSRC منحصر به فرد خود را اختصاص می‌دهد. این مقدار تا زمان خروج آنها ثابت می‌ماند.

از آنجایی که تعداد SSRCها در طول جلسه Meet Media API ثابت است، سه سناریوی ممکن در اینجا آمده است:

  1. شرکت‌کنندگان بیشتری نسبت به SSRCها در دسترس هستند :

    Meet صدای سه نفر از بلندترین افراد را از طریق سه SSRC منتقل می‌کند. از آنجایی که هر جریان RTP روی SSRC اختصاصی خود قرار دارد، هیچ تداخلی بین جریان‌ها وجود ندارد.

    میت صدای سه نفر از پر سر و صداترین افراد را در سه SSRC منتقل می‌کند.
    شکل ۱. برنامه‌ی Meet صدای سه نفر از پرصداترین افراد را از طریق سه SSRC منتقل می‌کند.

    اگر هر یک از جریان‌های اصلی در کنفرانس، دیگر جزو بلندترین جریان‌ها نباشند، Meet بسته‌های RTP که SSRC را تشکیل می‌دهند، به بلندترین بسته‌ها تغییر مسیر می‌دهد.

    میت بسته‌های RTP را به بلندترین فرد جدید تغییر می‌دهد.
    شکل ۲. نرم‌افزار Meet بسته‌های RTP را به بلندترین فرد جدید تغییر می‌دهد.
  2. تعداد شرکت‌کنندگان فعال کمتر از سه SSRC صوتی است :

    برای سناریویی که تعداد SSRCهای موجود بیشتر از تعداد پخش‌های موجود در کنفرانس باشد، Meet هر بسته صوتی موجود را به SSRC منحصر به فرد خود نگاشت می‌کند. هر SSRC استفاده نشده‌ای هنوز آماده و در دسترس است، اما هیچ بسته RTP منتقل نمی‌شود.

    Meet بسته‌های صوتی موجود را به SSRC منحصر به فرد خود نگاشت می‌کند.
    شکل ۳. Meet بسته‌های صوتی موجود را به SSRC منحصر به فرد خود نگاشت می‌کند.
  3. تعداد شرکت‌کنندگان فعال برابر با سه SSRC صوتی است :

    برای سناریوی شرکت‌کنندگان برابر و SSRCهای موجود، رسانه هر شرکت‌کننده به یک SSRC اختصاصی نگاشت می‌شود. این نگاشت‌ها تا زمانی که این سناریوی خاص ادامه داشته باشد، پابرجا می‌مانند.

    Meet رسانه‌های هر شرکت‌کننده را به یک SSRC اختصاصی نگاشت می‌کند.
    شکل ۴. Meet رسانه‌های هر شرکت‌کننده را به یک SSRC اختصاصی نگاشت می‌کند.
،

جریان‌های رسانه‌ای مجازی، در زمینه کنفرانس WebRTC، جریان‌های رسانه‌ای هستند که توسط یک واحد ارسال انتخابی (SFU) برای جمع‌آوری و توزیع رسانه از چندین شرکت‌کننده تولید می‌شوند. برخلاف جریان‌های رسانه‌ای مستقیم نظیر به نظیر، که در کنفرانس‌های بزرگ شبکه‌ای پیچیده از اتصالات ایجاد می‌کنند، جریان‌های رسانه‌ای مجازی توپولوژی را ساده می‌کنند. SFU جریان‌های رسانه‌ای فردی را از هر شرکت‌کننده دریافت می‌کند و جریان‌های فعال یا مرتبط را به صورت انتخابی به سایر شرکت‌کنندگان ارسال می‌کند و آنها را در یک مجموعه کوچکتر و ثابت از جریان‌های رسانه‌ای مجازی خروجی، مالتی‌پلکس می‌کند.

این رویکرد تعداد جریان‌های ورودی همزمان که هر شرکت‌کننده باید مدیریت کند را کاهش می‌دهد و نیازهای پردازش و پهنای باند را کاهش می‌دهد. هر جریان مجازی می‌تواند شامل رسانه‌های یک شرکت‌کننده در یک زمان باشد که به صورت پویا توسط SFU بر اساس عواملی مانند فعالیت سخنران یا تخصیص ویدیو تنظیم می‌شود. شرکت‌کنندگان این جریان‌های مجازی را دریافت می‌کنند و عملاً یک نمای ترکیبی از کنفرانس را بدون نیاز به مدیریت جریان‌های جداگانه از هر شرکت‌کننده دیگر مشاهده می‌کنند. این انتزاع ارائه شده توسط جریان‌های رسانه مجازی برای مقیاس‌بندی کنفرانس‌های WebRTC به تعداد زیادی از شرکت‌کنندگان بسیار مهم است.

برای دریافت صدا، کلاینت باید دقیقاً سه توصیف رسانه صوتی ارائه دهد که سه فرستنده و گیرنده صوتی محلی ایجاد می‌کند. برای دریافت تصویر، کلاینت باید یک تا سه توصیف رسانه ویدیویی ارائه دهد که آن تعداد فرستنده و گیرنده ویدیویی را تعیین می‌کند.

گیرنده‌ها

هر فرستنده-گیرنده متعلق به کلاینت، یک RtpReceiver اختصاصی و یک «آهنگ رسانه‌ای» اختصاصی دارد که جریان‌های صوتی RTP را از سرورهای Meet دریافت می‌کند.

هر آهنگ یک شناسه منحصر به فرد دارد و جریان متمایز خود از بسته‌های RTP را از آن منبع رسانه خاص دریافت می‌کند. برای مثال، آهنگ A ممکن است صدا را از production-1 دریافت کند در حالی که آهنگ B صدا را از production-2 دریافت می‌کند.

SSRC ها

هر بسته RTP دارای یک مقدار هدر منبع همگام‌سازی (SSRC) است که آن را به یک مسیر خاص متصل می‌کند.

جلسات صوتی از طریق Meet Media API از سه جریان رسانه‌ای مجزا استفاده می‌کنند که هر کدام SSRC استاتیک خود را دارند. پس از ایجاد، این مقادیر SSRC هرگز در طول جلسه تغییر نمی‌کنند.

جریان‌های مجازی

رابط برنامه‌نویسی کاربردی Meet Media از جریان‌های رسانه‌ای مجازی (Virtual Media Streams) استفاده می‌کند. این جریان‌ها در طول جلسه ثابت هستند، اما منبع بسته‌ها ممکن است تغییر کند تا مرتبط‌ترین فیدها را منعکس کند. جریان‌های رسانه‌ای مجازی برای صدا و تصویر یکسان عمل می‌کنند.

منبع مشارکت‌کننده (CSRC) در هدرهای بسته RTP، منبع واقعی بسته‌های RTP را مشخص می‌کند. Meet به هر شرکت‌کننده در کنفرانس، هنگام پیوستن، CSRC منحصر به فرد خود را اختصاص می‌دهد. این مقدار تا زمان خروج آنها ثابت می‌ماند.

از آنجایی که تعداد SSRCها در طول جلسه Meet Media API ثابت است، سه سناریوی ممکن در اینجا آمده است:

  1. شرکت‌کنندگان بیشتری نسبت به SSRCها در دسترس هستند :

    Meet صدای سه نفر از بلندترین افراد را از طریق سه SSRC منتقل می‌کند. از آنجایی که هر جریان RTP روی SSRC اختصاصی خود قرار دارد، هیچ تداخلی بین جریان‌ها وجود ندارد.

    میت صدای سه نفر از پر سر و صداترین افراد را در سه SSRC منتقل می‌کند.
    شکل ۱. برنامه‌ی Meet صدای سه نفر از پرصداترین افراد را از طریق سه SSRC منتقل می‌کند.

    اگر هر یک از جریان‌های اصلی در کنفرانس، دیگر جزو بلندترین جریان‌ها نباشند، Meet بسته‌های RTP که SSRC را تشکیل می‌دهند، به بلندترین بسته‌ها تغییر مسیر می‌دهد.

    میت بسته‌های RTP را به بلندترین فرد جدید تغییر می‌دهد.
    شکل ۲. نرم‌افزار Meet بسته‌های RTP را به بلندترین فرد جدید تغییر می‌دهد.
  2. تعداد شرکت‌کنندگان فعال کمتر از سه SSRC صوتی است :

    برای سناریویی که تعداد SSRCهای موجود بیشتر از تعداد پخش‌های موجود در کنفرانس باشد، Meet هر بسته صوتی موجود را به SSRC منحصر به فرد خود نگاشت می‌کند. هر SSRC استفاده نشده‌ای هنوز آماده و در دسترس است، اما هیچ بسته RTP منتقل نمی‌شود.

    Meet بسته‌های صوتی موجود را به SSRC منحصر به فرد خود نگاشت می‌کند.
    شکل ۳. Meet بسته‌های صوتی موجود را به SSRC منحصر به فرد خود نگاشت می‌کند.
  3. تعداد شرکت‌کنندگان فعال برابر با سه SSRC صوتی است :

    برای سناریوی شرکت‌کنندگان برابر و SSRCهای موجود، رسانه هر شرکت‌کننده به یک SSRC اختصاصی نگاشت می‌شود. این نگاشت‌ها تا زمانی که این سناریوی خاص ادامه داشته باشد، پابرجا می‌مانند.

    Meet رسانه‌های هر شرکت‌کننده را به یک SSRC اختصاصی نگاشت می‌کند.
    شکل ۴. Meet رسانه‌های هر شرکت‌کننده را به یک SSRC اختصاصی نگاشت می‌کند.
،

جریان‌های رسانه‌ای مجازی، در زمینه کنفرانس WebRTC، جریان‌های رسانه‌ای هستند که توسط یک واحد ارسال انتخابی (SFU) برای جمع‌آوری و توزیع رسانه از چندین شرکت‌کننده تولید می‌شوند. برخلاف جریان‌های رسانه‌ای مستقیم نظیر به نظیر، که در کنفرانس‌های بزرگ شبکه‌ای پیچیده از اتصالات ایجاد می‌کنند، جریان‌های رسانه‌ای مجازی توپولوژی را ساده می‌کنند. SFU جریان‌های رسانه‌ای فردی را از هر شرکت‌کننده دریافت می‌کند و جریان‌های فعال یا مرتبط را به صورت انتخابی به سایر شرکت‌کنندگان ارسال می‌کند و آنها را در یک مجموعه کوچکتر و ثابت از جریان‌های رسانه‌ای مجازی خروجی، مالتی‌پلکس می‌کند.

این رویکرد تعداد جریان‌های ورودی همزمان که هر شرکت‌کننده باید مدیریت کند را کاهش می‌دهد و نیازهای پردازش و پهنای باند را کاهش می‌دهد. هر جریان مجازی می‌تواند شامل رسانه‌های یک شرکت‌کننده در یک زمان باشد که به صورت پویا توسط SFU بر اساس عواملی مانند فعالیت سخنران یا تخصیص ویدیو تنظیم می‌شود. شرکت‌کنندگان این جریان‌های مجازی را دریافت می‌کنند و عملاً یک نمای ترکیبی از کنفرانس را بدون نیاز به مدیریت جریان‌های جداگانه از هر شرکت‌کننده دیگر مشاهده می‌کنند. این انتزاع ارائه شده توسط جریان‌های رسانه مجازی برای مقیاس‌بندی کنفرانس‌های WebRTC به تعداد زیادی از شرکت‌کنندگان بسیار مهم است.

برای دریافت صدا، کلاینت باید دقیقاً سه توصیف رسانه صوتی ارائه دهد که سه فرستنده و گیرنده صوتی محلی ایجاد می‌کند. برای دریافت تصویر، کلاینت باید یک تا سه توصیف رسانه ویدیویی ارائه دهد که آن تعداد فرستنده و گیرنده ویدیویی را تعیین می‌کند.

گیرنده‌ها

هر فرستنده-گیرنده متعلق به کلاینت، یک RtpReceiver اختصاصی و یک «آهنگ رسانه‌ای» اختصاصی دارد که جریان‌های صوتی RTP را از سرورهای Meet دریافت می‌کند.

هر آهنگ یک شناسه منحصر به فرد دارد و جریان متمایز خود از بسته‌های RTP را از آن منبع رسانه خاص دریافت می‌کند. برای مثال، آهنگ A ممکن است صدا را از production-1 دریافت کند در حالی که آهنگ B صدا را از production-2 دریافت می‌کند.

SSRC ها

هر بسته RTP دارای یک مقدار هدر منبع همگام‌سازی (SSRC) است که آن را به یک مسیر خاص متصل می‌کند.

جلسات صوتی از طریق Meet Media API از سه جریان رسانه‌ای مجزا استفاده می‌کنند که هر کدام SSRC استاتیک خود را دارند. پس از ایجاد، این مقادیر SSRC هرگز در طول جلسه تغییر نمی‌کنند.

جریان‌های مجازی

رابط برنامه‌نویسی کاربردی Meet Media از جریان‌های رسانه‌ای مجازی (Virtual Media Streams) استفاده می‌کند. این جریان‌ها در طول جلسه ثابت هستند، اما منبع بسته‌ها ممکن است تغییر کند تا مرتبط‌ترین فیدها را منعکس کند. جریان‌های رسانه‌ای مجازی برای صدا و تصویر یکسان عمل می‌کنند.

منبع مشارکت‌کننده (CSRC) در هدرهای بسته RTP، منبع واقعی بسته‌های RTP را مشخص می‌کند. Meet به هر شرکت‌کننده در کنفرانس، هنگام پیوستن، CSRC منحصر به فرد خود را اختصاص می‌دهد. این مقدار تا زمان خروج آنها ثابت می‌ماند.

از آنجایی که تعداد SSRCها در طول جلسه Meet Media API ثابت است، سه سناریوی ممکن در اینجا آمده است:

  1. شرکت‌کنندگان بیشتری نسبت به SSRCها در دسترس هستند :

    Meet صدای سه نفر از بلندترین افراد را از طریق سه SSRC منتقل می‌کند. از آنجایی که هر جریان RTP روی SSRC اختصاصی خود قرار دارد، هیچ تداخلی بین جریان‌ها وجود ندارد.

    میت صدای سه نفر از پر سر و صداترین افراد را در سه SSRC منتقل می‌کند.
    شکل ۱. برنامه‌ی Meet صدای سه نفر از پرصداترین افراد را از طریق سه SSRC منتقل می‌کند.

    اگر هر یک از جریان‌های اصلی در کنفرانس، دیگر جزو بلندترین جریان‌ها نباشند، Meet بسته‌های RTP که SSRC را تشکیل می‌دهند، به بلندترین بسته‌ها تغییر مسیر می‌دهد.

    میت بسته‌های RTP را به بلندترین فرد جدید تغییر می‌دهد.
    شکل ۲. نرم‌افزار Meet بسته‌های RTP را به بلندترین فرد جدید تغییر می‌دهد.
  2. تعداد شرکت‌کنندگان فعال کمتر از سه SSRC صوتی است :

    برای سناریویی که تعداد SSRCهای موجود بیشتر از تعداد پخش‌های موجود در کنفرانس باشد، Meet هر بسته صوتی موجود را به SSRC منحصر به فرد خود نگاشت می‌کند. هر SSRC استفاده نشده‌ای هنوز آماده و در دسترس است، اما هیچ بسته RTP منتقل نمی‌شود.

    Meet بسته‌های صوتی موجود را به SSRC منحصر به فرد خود نگاشت می‌کند.
    شکل ۳. Meet بسته‌های صوتی موجود را به SSRC منحصر به فرد خود نگاشت می‌کند.
  3. تعداد شرکت‌کنندگان فعال برابر با سه SSRC صوتی است :

    برای سناریوی شرکت‌کنندگان برابر و SSRCهای موجود، رسانه هر شرکت‌کننده به یک SSRC اختصاصی نگاشت می‌شود. این نگاشت‌ها تا زمانی که این سناریوی خاص ادامه داشته باشد، پابرجا می‌مانند.

    Meet رسانه‌های هر شرکت‌کننده را به یک SSRC اختصاصی نگاشت می‌کند.
    شکل ۴. Meet رسانه‌های هر شرکت‌کننده را به یک SSRC اختصاصی نگاشت می‌کند.