グループ通話でピアのビデオ解像度
アプリケーションは、ビデオグループ通話(カンファレンス)でrequestPeerVideo()
を呼び出して、特定のピアからビデオストリームをリクエストできます。ここでは、ビデオストリームをリクエストする際にビデオ解像度を設定する方法について説明します。
対応する通話タイプ | 対応するSDKバージョン |
---|---|
グループ通話(カンファレンス) | すべてのバージョン |
概要
通常の場合、ビデオストリーム数が多いほど、CPUとメモリの使用量は増えます。解像度が高いほど、より多くのネットワーク帯域幅が必要になります。CPUやメモリ、ネットワークを使いすぎると、ユーザーは低品質な通話を体験してしまいます。つまり、不適切な解像度でrequestPeerVideo()
を呼び出した場合、ビデオ品質だけでなく、オーディオ品質も低下する恐れがあります。
適切な解像度を決定することは、より良いビデオグループ通話を実現するために非常に重要です。LINE PlanetKitが推奨する解像度はありますが、アプリケーションがそれぞれの要求事項に合わせて値を最適化する必要があります。
推奨解像度
ビデオストリーム数による推奨解像度は、次のとおりです。
ウェブ向けの推奨解像度 | |
---|---|
グリッドビュー1 | ストリーム数が1-8個のとき:VGA ストリーム数が9個以上のとき:QVGA |
フォーカスビュー2 | HD1つ、残りはQVGA |
画面共有3 | すべてQVGA |
1グリッドビューは、タイル型ビューの一種です。各ビデオストリームがレンダリングする、すべてのウィンドウが同じサイズで表示されます。
2フォーカスビューは、大きな1つのウィンドウに最小サイズの異なるウィンドウが表示される形です。
3 画面共有は、画面を共有する際に推奨するビデオ解像度を意味します。
例
ここでは、適切なビデオ解像度で、requestPeerVideo()
を呼び出す例を示します。ここでは、参加者が最大3人のときはVGAで表示し、4人以上のときはQVGAで表示することにします。
User-01とUser-02がグループ通話に参加してビデオをオンにします。グループ通話に参加する基本の流れはグループ通話フローを参照してください。
User-03が参加すると、すべての参加者はevtPeerListUpdated
イベントを通じて誰が新たに参加したか分かります。また、evtPeersVideoUpdated
イベントを通じてビデオを使用できる参加者リストも更新します。
イベントを送信すると、User-03は現在のグループ通話に自分を含めて3人がいて、ビデオストリームも3つあることが分かります。アプリケーション設計により、User-03はVGA解像度で2つのビデオストリームをリクエストする必要があります。User-01とUser-02用にそれぞれrequestPeerVideo()
を呼び出します。
同様に、User-01とUser-2もUser-03がビデオを有効にした状態で参加したことが分かります。上の図に示してるとおり、User-01とUser-02がUser-03のビデオをVGAで表示するためにrequestPeerVideo()
を呼び出します。
しばらくして、User-04が参加します。User-03はグループ通話の参加者数が増えたことが分かったので、QVGAで表示する必要があります。つまり、User-03はUser-01とUser-02の解像度をQVGAに変えるよう、updatePeerVideo()
を呼び出します。その後、User-04のQVGA解像度ビデオをリクエストするためにrequestPeerVideo()
を呼び出します。
関連API
グループ通話でピアのビデオ解像度の設定に関連するAPIは、以下のとおりです。