Sora C SDK 2024.1.0 をリリースしました

V
shiguredo
Published in
3 min readJan 26, 2024

時雨堂では自社製品 WebRTC SFU Sora 専用の SDK を様々なプラットフォームに向けて開発、提供しています。

今回は、新たな SDK として WebRTC SFU Sora C SDK をリリースしました。

Sora C SDK は今までの Sora SDK がベースとしている libwebrtc ではなく、 OBS の WebRTC (WHIP) などが採用している libdatachannel をベースとした SDK になります。

目的

Sora C SDK は libwebrtc ではなく libdatachannel を利用することで、バイナリサイズとリリース頻度を抑えることを目的にしています。

また libwebrtc では難しかった、最新のコーデックや機能を試せる仕組みなども実現できればと思います。

開発した経緯などは以下をどうぞ。

2024.1.0

最初のリリースは小さくと思っていたのですが、多機能になりました。

  • 送信のみ (role: sendonly)
  • マルチストリーム 対応
  • サイマルキャスト 対応
  • 音声コーデックは Opus のみ
  • 映像コーデックはハードウェアアクセラレーターを利用した H.264 と H.265 に対応
  • ソフトウェアコーデックには OpenH264 を採用
  • データチャネルを利用したシグナリング対応
  • データチャネルを利用したメッセージング対応
  • 複数シグナリング URL 対応
  • クラスター機能利用時の “type”: “redirect“ に対応
  • Ubuntu 22.04 x86_64 対応
  • macOS arm64 対応

今後

Raspberry Pi Zero や RISC-V を積んだ VisionFive2 に対応していく予定です。

その後は受信のみ (role: recvonly) へ対応していきます。受信には Simple DirectMedia Layer を使ったサンプルを用意する予定です。

優先実装

Sora C SDK は多くの優先実装を用意していますので、ご相談をお待ちしております。

雑感

OBS に libdatachannel が採用されたことをきっかけに、小さなライブラリで WebRTC が利用できる SDK を提供したいと考えて進めてきた Sora C SDK ですが、無事リリースすることができました。

今後もコツコツと継続して開発していければと思います。

--

--