SFU利用時のAPIへの設定方法

ビットレート等の設定は、大きく以下の2つの設定に分かれます

  • Room帯域幅予約設定
    • AccessTokenのRoomSpecに設定
    • Roomへの初接続時にRoom単位で設定
    • Room全体でどれだけのデータを同時に送受信する予定があるかを設定
  • 各接続の設定
    • ClientSDKのconnect APIのoptionの中にあるSendingOption/ReceivingOptionで設定
    • Connection単位で接続開始時に設定
    • 各接続毎に解像度、用途、動作環境に応じて設定
      • Codec設定
      • メディア受信の要否
      • 送信優先度
      • ビットレート上限

Room帯域幅予約設定

  • AccessTokenのroom_spec.bitrate_reservation_mbpsに設定
  • 同時に同じRoomに入室する全てのConnectionは同じRoomSpecを指定しなければならない
  • 現バージョンでは接続中は途中変更不可

各接続の設定

  • Connect optionのoption.sending.videoに下記を設定
    • codec : codec種別
      • iOS Safari, THETA Pluginの接続ではh264を推奨
      • h264のHW Codecを搭載していないAndroid環境の場合は vp8 設定が必須
    • priority: 送信優先度(「通常送信」 or 「高画質送信」)
      • 「Room帯域幅予約設定」に合わせる必要が生じた際、“normal”の接続から先にビットレートが低下
      • THETA、現場カメラ、画面/資料共有等「重要な映像データを送る接続」は“high”を強く推奨
      • 各参加者のビデオ映像等、映像品質がそれほど重要でないものは”normal”設定を推奨
      • “high”となっている接続だけでも「Room帯域幅予約」を超過する場合は”high”の品質も低下
  • Connect optionのoption.sending.videoに下記を設定
    • maxBitrateKbps: ビットレート上限
      • 十分に大きい「Room帯域幅予約設定」の場合でも、この設定値が送信ビットレートの上限

「通常送信」と「高画質送信」の違い

  • 接続時に「通常送信」 or 「高画質送信」を設定することができます
  • 「高画質送信」は「通常送信」より優先してビットレートや帯域幅が割り当てられます
  • スマホやTHETAなどから高解像度の映像をできるだけ高品質に他拠点へ配信したい場合には「高画質送信」を設定します

優先度の違い

※上記の場合、「高画質送信」の①②は優先され、固定で送受信される。
「通常送信」の➂④は変動し、合計値が2Mbpsで送受信される。