Sora iOS SDK 2.4.0 リリース
Sora iOS SDK 2.4.0 をリリースしました。しばらく React Native WebRTC Kit の開発に集中していたり、バグ修正に追われたりしていて、アップデートが後回しになってしまいました。
主な変更点
- WebRTC M76 に対応しました。前回の対応バージョンが M66 なので、1 年以上空いてしまいました。
- スポットライト機能に対応しました。
- rid ベースのサイマルキャスト機能に対応しました。利用できる映像コーデックは VP8 のみです。 VP9 、 H.264 は現時点では非対応です。
- シグナリングの任意のメタデータを扱えるようにしました。
今後の課題
任意の音声の送信
目下のところ頭を悩まされているのが、マイク以外の任意の音声の送受信です。映像は好きに送信できますが、実は libwebrtc の iOS API ではマイクの音声しか送信できません。 API どころかそもそも実装がマイクにべったりで、ユーザーからはどうしようもありません。当然 iOS SDK でも解決策を出せないのが現状です。 Broadcast Upload Extension などの iOS の機能でも同様です。
他社では任意の音声の送受信が可能なサービスもあります。推測になりますが、 libwebrtc をカスタマイズして独自に音声処理を実装している可能性があります。現在、弊社でもカスタマイズを検討中です。
API の見直し
M66 で RTCMediaStream
をめぐる RTCPeerConnection
の新しい API が追加されました。旧 API は deprecated になりましたが、 M76 の現在でもほとんどの機能は問題ありません。 Unified Plan に対応できないという大きな問題がありますが、これについては別の機会に書こうと思います。
iOS SDK はすでに内部実装を変更してあるので今のままでも影響は少ないですが、より柔軟にメディアデータを扱えるように iOS SDK でも API の見直しを検討中です。
以上です。