مدیریت تخصیص ویدئو در Meet Media API، مدیریت تخصیص ویدئو در Meet Media API، مدیریت تخصیص ویدئو در Meet Media API

پس از اتصال به یک کنفرانس ، هر صدای درخواستی بلافاصله منتقل و در دسترس قرار می‌گیرد. با این حال، برای دریافت ویدیو، کلاینت ابتدا باید برای هر جریان ویدیویی، بوم (canvas) تعریف کند.

Canvasها به Meet کمک می‌کنند تا بفهمد کلاینت شما چگونه از یک جریان ویدیویی استفاده خواهد کرد، وضوح آن را بر حسب پیکسل (مثلاً 1280 × 720)، فریم در ثانیه (FPS) و یک پروتکل تخصیص را انتخاب کند. پروتکل تخصیص مشخص می‌کند که Meet چگونه باید جریان‌های ویدیویی را زمانی که تعداد شرکت‌کنندگان بیشتر از SSRCها است، انتخاب کند.

درخواست‌های تخصیص ویدیو

برای دریافت ویدیو، کلاینت‌ها ابتدا یک درخواست تخصیص ویدیو از طریق کانال داده VideoAssignment ارسال می‌کنند و بوم‌هایی را برای جریان‌های ویدیویی مورد مذاکره تعریف می‌کنند.

درخواست تخصیص ویدیو را از طریق کانال داده تخصیص ویدیو ارسال کنید.
شکل ۱. ارسال درخواست تخصیص ویدیو از طریق کانال داده تخصیص ویدیو.

به محض اینکه Meet درخواست را دریافت کند، بر اساس عواملی مانند موارد زیر، شروع به انتخاب ویدیوهای «مرتبط» شرکت‌کنندگان می‌کند:

  • آیا شرکت کننده صحبت می کند؟
  • آیا شرکت کننده در حال ارائه است؟
  • آیا صفحه نمایش شرکت‌کننده به اشتراک گذاشته می‌شود؟

سپس، Meet «مرتبط‌ترین» شرکت‌کنندگان را به SSRCهای ویدیویی موجود نگاشت می‌کند و شروع به انتقال ویدیو می‌کند و پارامترهای canvas را تا حد امکان با یکدیگر تطبیق می‌دهد.

اگر تعداد شرکت‌کنندگان در یک کنفرانس از تعداد SSRCها بیشتر شود، Meet به مرور زمان پخش جریان‌ها را جایگزین می‌کند تا با مرتبط‌ترین شرکت‌کنندگان مطابقت داشته باشد.

سرورهای Meet درخواست‌ها را دریافت کرده و پخش‌های ویدیویی را اختصاص می‌دهند.
شکل ۲. سرورهای Meet درخواست‌ها را دریافت کرده و جریان‌های ویدیویی را اختصاص می‌دهند.

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

به‌روزرسانی منبع را از طریق کانال داده تخصیص ویدیو ارسال کنید.
شکل ۳. ارسال به‌روزرسانی منبع از طریق کانال داده تخصیص ویدیو.

ملاحظات

  • Meet ارتباط بین SSRC و canvas را تعیین می‌کند. کلاینت این موضوع را در درخواست مشخص نمی‌کند.

  • Meet به طور قطعی SSRCها را اختصاص نمی‌دهد. برای مثال، فرض نکنید که اولین SSRC «مرتبط‌ترین» شرکت‌کننده است.

  • مشتریان نباید درخواست وضوح تصویر بیشتری از آنچه نیاز دارند، داشته باشند. برای مثال، وقتی مدل شما فقط از ۴۸۰p استفاده می‌کند، درخواست ویدیوی ۱۰۸۰p نکنید.

  • تطبیق دقیق رزولوشن‌ها ممکن است همیشه امکان‌پذیر نباشد.

  • مشتریان نباید درخواست‌های بیش از حد برای تعیین تکلیف ویدیو ارسال کنند. این درخواست‌ها یا متوقف می‌شوند یا نادیده گرفته می‌شوند.

،

پس از اتصال به یک کنفرانس ، هر صدای درخواستی بلافاصله منتقل و در دسترس قرار می‌گیرد. با این حال، برای دریافت ویدیو، کلاینت ابتدا باید برای هر جریان ویدیویی، بوم (canvas) تعریف کند.

Canvasها به Meet کمک می‌کنند تا بفهمد کلاینت شما چگونه از یک جریان ویدیویی استفاده خواهد کرد، وضوح آن را بر حسب پیکسل (مثلاً 1280 × 720)، فریم در ثانیه (FPS) و یک پروتکل تخصیص را انتخاب کند. پروتکل تخصیص مشخص می‌کند که Meet چگونه باید جریان‌های ویدیویی را زمانی که تعداد شرکت‌کنندگان بیشتر از SSRCها است، انتخاب کند.

درخواست‌های تخصیص ویدیو

برای دریافت ویدیو، کلاینت‌ها ابتدا یک درخواست تخصیص ویدیو از طریق کانال داده VideoAssignment ارسال می‌کنند و بوم‌هایی را برای جریان‌های ویدیویی مورد مذاکره تعریف می‌کنند.

درخواست تخصیص ویدیو را از طریق کانال داده تخصیص ویدیو ارسال کنید.
شکل ۱. ارسال درخواست تخصیص ویدیو از طریق کانال داده تخصیص ویدیو.

به محض اینکه Meet درخواست را دریافت کند، بر اساس عواملی مانند موارد زیر، شروع به انتخاب ویدیوهای «مرتبط» شرکت‌کنندگان می‌کند:

  • آیا شرکت کننده صحبت می کند؟
  • آیا شرکت کننده در حال ارائه است؟
  • آیا صفحه نمایش شرکت‌کننده به اشتراک گذاشته می‌شود؟

سپس، Meet «مرتبط‌ترین» شرکت‌کنندگان را به SSRCهای ویدیویی موجود نگاشت می‌کند و شروع به انتقال ویدیو می‌کند و پارامترهای canvas را تا حد امکان با یکدیگر تطبیق می‌دهد.

اگر تعداد شرکت‌کنندگان در یک کنفرانس از تعداد SSRCها بیشتر شود، Meet به مرور زمان پخش جریان‌ها را جایگزین می‌کند تا با مرتبط‌ترین شرکت‌کنندگان مطابقت داشته باشد.

سرورهای Meet درخواست‌ها را دریافت کرده و پخش‌های ویدیویی را اختصاص می‌دهند.
شکل ۲. سرورهای Meet درخواست‌ها را دریافت کرده و جریان‌های ویدیویی را اختصاص می‌دهند.

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

به‌روزرسانی منبع را از طریق کانال داده تخصیص ویدیو ارسال کنید.
شکل ۳. ارسال به‌روزرسانی منبع از طریق کانال داده تخصیص ویدیو.

ملاحظات

  • Meet ارتباط بین SSRC و canvas را تعیین می‌کند. کلاینت این موضوع را در درخواست مشخص نمی‌کند.

  • Meet به طور قطعی SSRCها را اختصاص نمی‌دهد. برای مثال، فرض نکنید که اولین SSRC «مرتبط‌ترین» شرکت‌کننده است.

  • مشتریان نباید درخواست وضوح تصویر بیشتری از آنچه نیاز دارند، داشته باشند. برای مثال، وقتی مدل شما فقط از ۴۸۰p استفاده می‌کند، درخواست ویدیوی ۱۰۸۰p نکنید.

  • تطبیق دقیق رزولوشن‌ها ممکن است همیشه امکان‌پذیر نباشد.

  • مشتریان نباید درخواست‌های بیش از حد برای تعیین تکلیف ویدیو ارسال کنند. این درخواست‌ها یا متوقف می‌شوند یا نادیده گرفته می‌شوند.