サイマルキャスト機能¶
サイマルキャスト機能の詳細は Sora のドキュメント を参照してください。
警告
VGA 以上の解像度で利用することをおすすめします。
端末によっては、VGA より低い解像度を指定した場合、 Android で利用可能な解像度の下限を下回りクラッシュすることがあります。
対応するコーデック¶
次の映像コーデックに対応しています:
VP8
H.264 (ハードウェアエンコーダーのみ)
端末がハードウェアエンコーダーを搭載していれば、ハードウェアエンコーダーの利用がソフトウェアエンコーダーよりも優先されます。
サイマルキャスト機能を有効にする¶
サイマルキャスト機能を有効するには SoraMediaOption.enableSimulcast() を実行します。
サイマルキャストの rid は SimulcastRid
で指定します。
ビットレートや解像度が低い場合、 3 段階の画質の切替ができないことがあります。 その場合はビットレートと解像度を高めにすると画質を切り替えられるようになります。
サイマルキャスト機能はマルチストリーム機能が有効/無効のどちらでも動作します。マルチストリーム機能の有効化については マルチストリーム機能 を参照してください。
例¶
val capturer = CameraCapturerFactory.create(this)
val option = SoraMediaOption().apply {
// 映像、音声の送受信の設定を行います
// 音声の送受信をおこなっているためマルチストリーム機能が自動的に有効になります
enableVideoUpstream(capturer!!, egl.eglBaseContext)
enableAudioUpstream()
enableVideoDownstream()
enableAudioDownstream()
// サイマルキャスト機能を有効にします
enableSimulcast()
// 受信する画質 (rid) を指定することも可能です
// enableSimulcast(SimulcastRid.R0)
// サイマルキャスト機能は映像コーデックは VP8 または H.264 で利用可能です
videoCodec = SoraVideoOption.Codec.VP8
// 3 段階の画質に対応するためにビットレートを高めに指定します
videoBitrate = 5000
}
...
// Sora との接続後、カメラ起動時に解像度とフレームレートを指定します
// 3 段階の画質に対応するためにカメラの解像度を高めに指定します
capturer?.startCapture(1920, 1080, 30)