Skip to content

Releases: shiguredo/sora-cpp-sdk

2024.3.1

07 Mar 09:00
Compare
Choose a tag to compare
  • [FIX] Sora C++ SDK を利用してビルドする時に自動的に _LIBCPP_HARDENING_MODE が定義されるように修正

2024.3.0

07 Mar 05:49
Compare
Choose a tag to compare
  • [CHANGE] Lyra を Sora C++ SDK から外し、Lyra に関連するファイルや関数、オプションを除ける
    • SoraSignalingConfig::audio_codec_lyra_bitrate オプションを削除
    • SoraSignalingConfig::audio_codec_lyra_usedtx オプションを削除
    • SoraSignalingConfig::check_lyra_version オプションを削除
    • audio_encoder_lyra.{h,cpp} を削除し、AudioEncoderLyra クラスを削除
    • audio_decoder_lyra.{h,cpp} を削除し、AudioDecoderLyra クラスを削除
    • sora_audio_encoder_factory.{h,cpp} を削除し、CreateBuiltinAudioEncoderFactory 関数を削除
    • sora_audio_decoder_factory.{h,cpp} を削除し、CreateBuiltinAudioDecoderFactory 関数を削除
    • Version クラスから GetLyraCompatibleVersion 関数を削除
    • enum class SoraSignalingErrorCode から LYRA_VERSION_INCOMPATIBLE を削除
    • VERSION ファイルから LYRA_VERSION, LYRA_COMPATIBLE_VERSION を削除
    • リリースパッケージから lyra-1.3.2_sora-cpp-sdk-2024.2.0_android.tar.gz などの Lyra パッケージを生成しないようにする
    • インストールする内容から share/cmake/FindLyra.cmake を削除
    • run.py を実行する時のオプションから --no-lyra オプションを削除
    • test/hello 実行時に指定する json フォーマットのオプション mode: lyra を削除し、mode オプションそのものも削除
    • @melpon
  • [CHANGE] ビルド時に Bazel のインストールを行わないようにする
    • Lyra のために Bazel を利用していたので、関連して削除となる
    • @melpon
  • [ADD] Android 向けに音声出力先変更機能として SoraAudioManager を追加する
    • Android では C++ を経由した OS の API 利用が煩雑となるため、Java で実装し、Sora.aar をビルドして提供を行う
    • Sora.aar ファイルは Android のパッケージに含める
    • iOS 向けとは異なりインスタンス生成が必要
      • API レベル 31 でオーディオデバイスの切り替えや Bluetooth ヘッドセットのスイッチングの API が変更となり、API レベルに応じて処理を切り替える必要があったため
    • @tnoho

2024.2.0

04 Mar 09:02
Compare
Choose a tag to compare
  • [CHANGE] --webrtcbuild, --webrtc-fetch などの webrtc ローカルビルドに関するフラグを削除し、代わりに --webrtc-build-dir--webrtc-build-args を追加する
    • これにより、既存の webrtc-build ディレクトリを使ってローカルビルドを行うことができるようになる
    • @melpon
  • [CHANGE] SoraClientContextConfig から configure_media_dependencies を削除した
    • libwebrtc から cricket::MediaEngineDependencies が削除されたため
    • @enm10k
  • [UPDATE] libwebrtc を m121.6167.3.0 にあげる
  • [UPDATE] Boost を 1.84.0 にあげる
  • [UPDATE] CMake を 3.28.1 にあげる
  • [UPDATE] CUDA を 11.8 にあげる
    • 更新時に発生したビルド・エラーを回避するために include/sora/fix_cuda_noinline_macro_error.h を追加した
    • @enm10k
  • [UPDATE] Lyra を 1.3.2 にあげる
  • [UPDATE] Github Actions の setup-android と setup-msbuild のバージョンをアップデート
    • Node.js 16 の Deprecated に伴う対応
    • setup-android を v3 にアップデート
    • setup-android のアップデートに伴い ANDROID_SDK_CMDLINE_TOOLS_VERSION のバージョンを 9862592 にアップデート
      • 9862592 は CMDLINE_TOOLS のバージョン 10 に相当
      • 最新の 11 を指定するとエラーが出ることを懸念し、今回は 10 を指定
      • バージョンの組み合わせは setup-android の README を参照
    • build.yml に Setup JDK 17 を追加
      • JDK のバージョンを指定しない場合、デフォルトで JDK 11 を使用するため、JDK 17 を指定する
      • JDK 11 は setup-android のアップデートの影響で利用できなくなるため
      • JDK 17 を選択する理由は setup-android の README に記載されているバージョンの組み合わせに合わせるため
    • setup-msbuild を v2 にアップデート
      • node 20 に対応したバージョンを指定するため、最新の v2 を指定
      • リリースノートを参照すると、v2 は node 20 に対応していることがわかる setup-msbuild のリリースノート
    • @torikizi
  • [ADD] Python コードのフォーマッターに Ruff を使うようにする
  • [ADD] SoraClientContextConfig, SoraVideoEncoderFactoryConfigforce_i420_conversion_for_simulcast_adapter を追加する
    • use_simulcast_adapter = true の際に、エンコーダー内でビデオ・フレームのバッファーを I420 に変換しているが、この変換の有無をフラグで制御可能にした
    • force_i420_conversion_for_simulcast_adapter のデフォルト値は true で I420 への変換を行う
    • 変換を行わない場合、エンコードの性能が向上するが、バッファーの実装によってはサイマルキャストが利用できなくなる
    • @enm10k
  • [ADD] SoraSignalingObserverOnSwitched を追加する
  • [FIX] Jetson Orin で AV1 を送信中、他のユーザーが後から接続して受信した時に映像が出ない問題を修正
  • [FIX] test/android のアプリが実行時にエラーで落ちてしまう問題を修正
    • "AttachCurrentThread() must be called on this thread." というメッセージでエラーとなっていた
    • JVM::Initialize の前に AttachCurrentThreadIfNeeded 呼ぶ必要があった
    • @melpon

2024.1.0-hololens2.0

26 Jan 08:05
Compare
Choose a tag to compare
Lyra をリリースに含めない

2024.1.0

16 Jan 03:48
Compare
Choose a tag to compare
  • [CHANGE] JetPack 5.1.2 に対応
    • JetPack 5.1.1, 5.1.2 で動作を確認
    • JetPack 5.1 では、互換性の問題で JetsonJpegDecoder がエラーになることを確認
    • @enm10k
  • [ADD] ForwardingFilter の項目に version と metadata を追加
    • version と metadata はオプション項目として追加し、値がない場合は項目を設定しない
    • @torikizi
  • [FIX] DataChannel シグナリングが有効な場合、一部のシグナリングメッセージのコールバックが上がらないことがあるのを修正
  • [FIX] ForwardingFilter の action 項目は本来オプション項目だったが、 action は std::optional 型になっていなかったため修正

2023.17.0

25 Dec 04:00
Compare
Choose a tag to compare
  • [UPDATE] WebRTC を m120.6099.1.2 に上げる
    • m120.6099.1.1 より x86 シミュレータビルドがなくなったため、CI で ios の test ビルドを行わなくした
    • @melpon @enm10k @torikizi @miosakuma

2023.16.1

02 Dec 00:13
f48d459
Compare
Choose a tag to compare
  • [FIX] WebRTC を m119.6045.2.2 に上げる
    • Apple 非公開 API を利用していたため、Apple からリジェクトされる問題を修正
    • @voluntas

2023.16.0

19 Nov 05:14
Compare
Choose a tag to compare
  • [ADD] SRTP keying material を取得する機能を実装

2023.15.1

09 Nov 03:16
Compare
Choose a tag to compare
  • [FIX] macOS で USB 接続されたカメラが利用できなくなっていた問題を修正する
    • 2023.15.0 リリース時の WebRTC の更新に伴い、 macOS で USB 接続されたカメラが取得できなくなっていた
    • @enm10k

2023.15.0

31 Oct 03:29
Compare
Choose a tag to compare
  • [UPDATE] WebRTC を m119.6045.2.1 に上げる
  • [UPDATE] WebRTC を m119 に上げたことで必要になった関連するライブラリもバージョンを上げる
    • Ubuntu で使用する clang のバージョンを 15 にアップデート
    • すべてのプラットフォームで set_target_properties の CXX_STANDARD と C_STANDARD を 20 にアップデート
    • ANDROID_NDK_VERSION を r26b にアップデート
    • CMAKE_VERSION を 3.27.7 にアップデート
    • @melpon @enm10k @torikizi