スポットライト機能

スポットライト機能の詳細は Sora のドキュメント を参照してください。

スポットライト機能を有効にする

スポットライト機能を有効するには SoraMediaOption.enableSpotlight() を実行します。 スポットライト機能を有効にすると、同時に サイマルキャスト機能 とマルチストリームが有効になります。

val capturer = CameraCapturerFactory.create(this)

val mediaOption = SoraMediaOption().apply {
    // 映像と音声を送受信する
    enableVideoUpstream(capturer!!, egl!!.eglBaseContext)
    enableVideoDownstream(egl!!.eglBaseContext)
    enableAudioUpstream()
    enableAudioDownstream()

    // スポットライト機能の設定
    val spotlight = SoraSpotlightOption()

    // 最大アクティブ配信数
    spotlight.spotlightNumber = 3

    // スポットライトがフォーカスされている映像、フォーカスされていない映像の rid (オプション)
    // 映像を受信しない設定も可能
    spotlight.spotlightFocusRid = SoraVideoOption.SpotlightRid.R1
    spotlight.spotlightUnfocusRid = SoraVideoOption.SpotlightRid.NONE

    // スポットライト機能を有効にする
    enableSpotlight(spotlight)

    // 映像コーデックは VP8 または H.264
    videoCodec = SoraVideoOption.Codec.VP8
}

...
// Sora との接続後、カメラ起動時に解像度とフレームレートを指定する
// 解像度: VGA, フレームレート: 30
capturer?.startCapture(640, 480, 30)

スポットライトレガシー機能を有効にする

重要

スポットライトレガシー機能は 2021 年 12 月に廃止が予定されています。

スポットライトレガシー機能を有効にするには、サーバ側でスポットライトレガシー機能を有効にしてから Sora.usesSpotlightLegacy プロパティに true を指定します。

サーバ側でスポットライトレガシー機能が無効になっているとシグナリングに失敗します。 事前にサーバの設定を確認してください。

// スポットライトレガシー機能を有効にする
Sora.usesSpotlightLegacy = true

// スポットライトの設定
val option = SoraMediaOption().apply {
  ...
}
© Copyright 2018-2021, Shiguredo Inc. Created using Sphinx 4.2.0