リリースノート¶
- CHANGE
後方互換性のない変更
- UPDATE
後方互換性がある変更
- ADD
後方互換性がある追加
- FIX
バグ修正
NVIDIA Jetson JetPack SDK での利用は NVIDIA Jetson JetPack SDK をご確認ください。
2026.1.0¶
- 日付:
2026-08-dd
- 対応 Sora C++ SDK:
2026.2.1
- 対応 Sora:
2025.2.x / 2026.1.x
- 対応 Python:
3.12 / 3.13 / 3.14
- [CHANGE] Ubuntu 22.04 LTS のサポートを終了しました
- 対応プラットフォームを Ubuntu 26.04 LTS / Ubuntu 24.04 LTS に変更しました
- [CHANGE] macOS Sonoma 14 のサポートを終了しました
- 対応プラットフォームを macOS Tahoe 26 / macOS Sequoia 15 に変更しました
- [CHANGE]
SoraTransformableFrameのタイポmine_typeをmime_typeに修正しました- 誤った公開プロパティ名をそのまま残さないようにしました
mine_typeは削除しました(alias は残していません)
- [CHANGE] Ubuntu arm64 と Raspberry Pi OS の rootfs 生成を multistrap から署名検証付き sysroot builder に切り替えました
- insecure な
multistrap/--no-auth/AllowInsecureRepositoriesへの依存を撤去しました - Raspberry Pi OS wheel の動作対象を Trixie 以降に変更しました(Bookworm 以前は非対応です)
- libstdc++ 依存を 14 に引き上げ、
GLIBCXX_3.4.32未満の環境を動作対象外としました - wheel の manylinux tag (
manylinux_2_35_aarch64)は本変更では変更していません - Jetson の rootfs 生成は本変更の対象外とし、既存経路のまま残しました
- 既存の
_install/<target>/rootfsを持つローカル環境では、初回 build 前に該当 rootfs と_install/<target>/rootfs.versionを手動で削除してください(sysroot builder は由来不明の既存 rootfs を--force無しで拒否します)
- insecure な
- [ADD] Ubuntu 26.04 LTS のビルド・E2E テストに対応しました
- PyPI / GitHub Release への公開は Ubuntu 24.04 向け
manylinux_2_38wheel で賄います
- PyPI / GitHub Release への公開は Ubuntu 24.04 向け
- [ADD] macOS Tahoe 26 のビルド・リリース・E2E テストに対応しました
- [UPDATE] Ubuntu 24.04 向け wheel の manylinux tag を
manylinux_2_35からmanylinux_2_38に上げました - [UPDATE] Sora C++ SDK を
2026.2.1にアップデートしました- WEBRTC_BUILD_VERSION を
m150.7871.3.1にアップデートしました - BOOST_VERSION を
1.92.0にアップデートしました - CMAKE_VERSION を
4.4.2にアップデートしました
- WEBRTC_BUILD_VERSION を
- [UPDATE] libwebrtc m148 で
ArrayViewが C++ 標準のstd::spanに移行したため追従しました- 参考: libwebrtc の
ArrayView移行の issue
- 参考: libwebrtc の
- [UPDATE] nanobind を
3.0.0にアップデートしました- ABI バージョンが 21 から 22 に変更されたため、拡張の再コンパイルが必要です
- split mode の導入と、内紐化文字列キー・iteration・sequence 構築の高速化などのパフォーマンス改善が含まれます
NB_TRAMPOLINEの Size 引数が不要になる、nb::none()がラッパー型になる、nb::gil_scoped_acquireにis_valid()が追加されるなどの API 変更があります
- [FIX]
Soraの破棄順序が原因で GC のタイミング次第でプロセスが SIGSEGV でクラッシュしうる問題を修正しましたSora::~SoraがPeerConnectionFactoryを先に破棄した後にio_contextを破棄していたため、io_contextに残ったハンドラーが握るsora::SoraSignalingの破棄が破棄済みの signaling スレッドへ marshal され use-after-free が発生していました- 破棄順序を「子への破棄通知 →
io_contextの停止・破棄 → factory の破棄」に修正しました - io スレッドや signaling スレッドとの相互待ちを防ぐため、スレッドの終了待ちの間は GIL を解放するようにしました
- E2E テストの
test_audio_sink_callbacksなどで flaky に発生していた SEGV クラッシュの原因でした
- [FIX]
disconnect()がOnDisconnect待ちで永久にブロックしうる問題を修正しました- 最大 10 秒の有限待ちに変更し、待ち中の
KeyboardInterruptでも抜けられるようにしました
- 最大 10 秒の有限待ちに変更し、待ち中の
- [FIX]
SoraConnectionのデストラクタでDisposed()が最大 3 回呼ばれ subscriber 通知が重複しうる問題を修正しましたDisposePublisher::Disposed()にstd::atomic<bool> disposed_による冪等性ガードを追加しました- デストラクタ内の重複した
Disposed()呼び出しを削除し 1 回に集約しました
- [FIX]
SoraVideoFrame/SoraAudioFrame/SoraTransformableFrameの ndarray が親フレームへの参照を持たず UAF しうる問題を修正しましたdata()/get_data()が返す ndarray の owner に親フレームを紐付けるようにしました
- [FIX]
SoraVideoFrame/SoraVideoSourceが配列確保メモリを非配列unique_ptrで保持していた未定義動作を修正しましたstd::unique_ptr<uint8_t[]>に修正し、破棄時にdelete[]が呼ばれるようにしました
- [FIX]
SoraVideoSourceにDisposedの override が無く、ワーカースレッドの停止がデストラクタ依存だった問題を修正しましたDisposed()でfinished_を立てて待機を解除し、joinはデストラクタに残すようにしました
- [FIX]
SoraConnection::OnPushが GIL を取得せずに Python コールバックを呼んでいた問題を修正しました- GIL 非保持の内部スレッドから Python C API を呼ぶ未定義動作であり、参照カウント競合によるメモリ破壊で
push受信時にプロセスが SIGSEGV でクラッシュしうる問題がありました
- GIL 非保持の内部スレッドから Python C API を呼ぶ未定義動作であり、参照カウント競合によるメモリ破壊で
- [FIX] 音声コールバックが GIL を取得せずに Python を呼び出していた問題を修正しました
SoraAudioSinkとSoraAudioStreamSinkの音声コールバックを GIL 保持下で実行するようにしました
- [FIX] WebRTC Encoded Transform の
Transformが GIL を取得せずに Python を呼び出していた問題を修正しましたSoraAudioFrameTransformer/SoraVideoFrameTransformerのTransformを GIL 保持下で実行するようにしました
- [FIX]
SoraAudioSink.read()が待機中に GIL を解放していなかった問題を修正しましたread()はデータを待つ間ずっと GIL を保持しており、read(timeout=T)がブロックする間、同一プロセスの他の Python スレッドが最大 T 秒間停止していました
- [FIX]
SoraAudioSink.read()がシグナル割り込み時に Python 例外を握り潰していた問題を修正しました- メインスレッドで
read()の待機中にシグナル(Ctrl-C による SIGINT 等)を受け取ると、シグナルハンドラーが送出した例外を呼び出し側へ伝播せず握り潰していました - 加えて、シグナルで待機を抜けた際に、要求フレーム数に満たないバッファをそのまま読み出し、バッファ外アクセスによってプロセスのクラッシュやメモリ破壊に至りうる問題もありました
- いずれもメインスレッドで
read()を呼んだ場合にのみ発生し、ワーカースレッドなどメインスレッド以外でread()を呼ぶ一般的な使い方では影響しません
- メインスレッドで
- [FIX]
SoraConnectionのconnection_tp_clearがon_rpc_を解放していなかった問題を修正しましたconnection_tp_traverseはon_rpc_をPy_VISITで GC に報告しているのにconnection_tp_clearが解放しておらず、traverse/clear が非対称で CPython の循環 GC の契約に反していましたon_rpcハンドラーを含む参照循環を循環 GC が断ち切れず、接続オブジェクトのグラフ全体がリークしうる問題がありました
- [FIX]
rtc_log()がPyFrame_GetCodeの新規参照を解放せず参照リークする問題を修正しました- 使い終わった
PyCodeObjectをPy_DECREFし、Python C API 呼び出しを GIL 保持下に揃えました
- 使い終わった
- [FIX]
gil_scoped_acquire/gil_scoped_releaseがPy_IsInitialized()偽のときに未初期化メンバーをデストラクタで読む未定義動作を修正しました- メンバーをデフォルト初期化し、early return 経路でもデストラクタが確定した値を読むようにしました
- [FIX]
SoraAudioSourceInterfaceのaudio_observers_がロックなしで操作される問題を修正しましたobserver_lock_で保護し、SetVolumeはスナップショット後にロック外でコールバックするようにしました
- [FIX]
SoraVideoSourceのqueue_/finished_に明示的な同期が無い問題を修正しましたqueue_mtx_とstd::atomic<bool> finished_で保護し、待機はGILMutexLockを使うようにしました
- [FIX]
disconnect()後のsend_data_channel()/get_stats()がconn_の null チェック無しで SEGV する問題を修正しましたConnect()と同様にRuntimeErrorを返すようにしました
- [FIX]
SoraConnection::OnTrackでtransceiver/receiverが null のときに SIGSEGV しうる問題を修正しましたSoraMediaTrack構築時の null 参照によるプロセスクラッシュを防ぐようにしました- null のときは警告ログのみ出力し、Python コールバックは呼ばないようにしました
- [FIX]
SoraAudioSource::OnDataの 1 オーバーロードだけtrack_の null チェックが抜けていた問題を修正しました- 他のオーバーロードと同様に、publisher 破棄後は no-op となるようにしました
- [FIX]
SoraAudioSourceInterfaceが不正なsample_rate/channelsを検査せずクラッシュしうる問題を修正しましたsample_rate < 100またはchannels < 1のときValueErrorを返すようにしました
- [FIX]
Sora::ConvertJsonValueが Python 整数をintにキャストして int32 の範囲超過で例外になる問題を修正しましたPyLong_Checkとnb::cast<int64_t>で大きな整数を通し、bool分岐は先に維持するようにしました
- [FIX]
client_cert/client_key/ca_certをnb::bytes::c_str()で渡しており NUL バイトで切り詰められる問題を修正しましたstd::string(c_str(), size())でバイト列を忠実に伝搬するようにしました
- [FIX]
SoraAudioFrameの pickle 経路でint16_tをuint16_tに詰め替えている型不整合を修正しましたVectorData()/__getstate__/__setstate__の全経路をstd::vector<int16_t>に統一しました- pickle の後方互換性は切り捨てました(プロセス内一時データのためです)
- [FIX]
SoraFactoryコンストラクタのthrow std::exception()をメッセージ付きstd::runtime_errorに置き換えました- Python 側で
RuntimeErrorとして初期化失敗の原因が読み取れるようにしました
- Python 側で
- [FIX]
SoraConnection::OnSetOfferでAddTrack失敗時にエラーを握り潰していた問題を修正しましたRTC_LOG(LS_ERROR)で失敗内容を出力し、運用切り分けに必要な情報を残すようにしました
- [FIX] デフォルト User-Agent が
Sora Unity SDKになっていたのをSora Python SDKに修正しましたuser_agent未指定時のコピペ残骸で、Sora サーバー側のクライアント識別が誤っていました
- [FIX]
find_package(Threads REQUIRED)を呼んでいるがThreads::Threadsをリンクしていなかった問題を修正しましたsora_sdk_extにThreads::Threadsを明示的にリンクし、Sora::soraの transitive 依存に左右されないようにしました
2025.5.2¶
- 日付:
2025-12-22
- 対応 Sora C++ SDK:
2025.6.2
- 対応 Sora:
2025.1.x / 2025.2.x
- 対応 Python:
3.12 / 3.13 / 3.14
- [FIX]
video_h265_paramsへの対応が洩れていたのを修正しました
2025.5.1¶
- 日付:
2025-12-08
- 対応 Sora C++ SDK:
2025.6.1
- 対応 Sora:
2025.1.x / 2025.2.x
- 対応 Python:
3.12 / 3.13 / 3.14
- [FIX] Sora C++ SDK のバージョンを
2025.6.1にアップデートしました- 最新の Raspberry Pi OS で libcamera が 0.6 に上がり動作しない問題を修正しました
2025.5.0¶
- 日付:
2025-12-01
- 対応 Sora C++ SDK:
2025.6.0
- 対応 Sora:
2025.1.x / 2025.2.x
- 対応 Python:
3.12 / 3.13 / 3.14
- [ADD] Python 3.14 に対応しました
- [ADD] Python 3.11 を非対応にしました
- [ADD] Raspberry Pi OS 向けのパッケージを sora-sdk-rpi として PyPI に追加しました
uv add sora-sdk-rpiでインストールできます- Raspberry Pi OS Bookworm の arm64v8 に対応しています
- [ADD] Raspberry Pi OS 向けに libcamera を利用できる
Sora.create_libcamera_source()を追加しました - [ADD] Raspberry Pi OS 向けに V4L2-M2M API 経由で H.264 ハードウェアアクセラレーターを利用できる
VideoCodecImplementation.RASPI_V4L2M2Mを追加しました- Raspberry Pi 5 は H.264 ハードウェアアクセラレーターが搭載されていないため利用できません
- [ADD] サイマルキャスト機能で初期の
ridを指定するsimulcast_request_ridオプションを追加しました - デフォルトは未指定です -simulcastをtrueで指定する必要があります -sendrecvまたはrecvonlyでのみ有効です - [UPDATE] Sora C++ SDK のバージョンを
2025.6.0にアップデートしました- WEBRTC_BUILD_VERSION を
m143.7499.1.0にアップデートしました - CMAKE_VERSION を
4.1.2にアップデートしました
- WEBRTC_BUILD_VERSION を
2025.4.0¶
- 日付:
2025-09-12
- 対応 Sora C++ SDK:
2025.5.0
- 対応 Sora:
2024.2.x / 2025.1.x
- 対応 Python:
3.11 / 3.12 / 3.13
- [CHANGE] run.py をサブコマンド形式に変更しました
- 従来:
python run.py <target>- 新形式:python run.py build <target> - [UPDATE] Sora C++ SDK のバージョンを
2025.5.0にアップデートしました- WEBRTC_BUILD_VERSION を
m139.7258.3.0にアップデートしました - CMAKE_VERSION を
4.1.3にアップデートしました - BOOST_VERSION を
1.89.0にアップデートしました
- WEBRTC_BUILD_VERSION を
- [UPDATE]
.github/workflows内のすべてのワークフローファイルを新しいrun.py build形式にアップデートしました - [UPDATE] nanobind を
2.9.2にアップデートしました - [UPDATE] Sora C++ SDK のバージョンを
2025.5.0にアップデートしました - WEBRTC_BUILD_VERSION をm139.7258.3.0にアップデートしました - CMAKE_VERSION を4.1.0にアップデートしました - BOOST_VERSION を1.89.0にアップデートしました - [ADD] run.py に format サブコマンドを追加しました - C++ ファイルの clang-format によるフォーマット機能 - Python ファイルの ty によるタイプチェック機能
- [FIX] GitHub Actions の check_ubuntu_wheel ジョブで uv 0.8 以降の externally managed Python 環境エラーを修正しました
-
uv run --withからuv pip installを使用する方式に変更 - checkouts せずに仮想環境を作成して wheel ファイルをテストするように変更
2025.3.0¶
- 日付:
2025-07-09
- 対応 Sora C++ SDK:
2025.4.0
- 対応 Sora:
2024.2.x / 2025.1.x
- 対応 Python:
3.11 / 3.12 / 3.13
- [UPDATE] Sora C++ SDK のバージョンを
2025.4.0にアップデートしました- WEBRTC_BUILD_VERSION を
m138.7204.0にアップデートしました - CMAKE_VERSION を
4.0.3にアップデートしました
- WEBRTC_BUILD_VERSION を
- [ADD]
__version__でバージョンを取得できるようにしました - [ADD] Ubuntu 22.04 arm64 でのビルドを追加しました
- [ADD] WebSocket 接続時に
User-Agentを上書きする機能を追加しました - [ADD]
on_rpcコールバックを追加しました- Sora 2025.2.0 から利用できる用になる予定です
- [FIX] pyi ファイルを Python のバージョン毎に生成していなかった問題を修正しました
- [FIX] Ubuntu arm64 での Python 3.11 と 3.12 に対応できていなかった問題を修正しました
2025.2.3¶
- 日付:
2025-05-23
- 対応 Sora C++ SDK:
2025.3.1
- 対応 Sora:
2024.1.x / 2024.2.x
- 対応 Python:
3.11 / 3.12 / 3.13
- [FIX] 切断時に落ちる問題を解消するために Sora C++ SDK を
2025.3.1にアップデートしました
2025.2.2¶
- 日付:
2025-05-15
- 対応 Sora C++ SDK:
2025.3.0
- 対応 Sora:
2024.1.x / 2024.2.x
- 対応 Python:
3.11 / 3.12 / 3.13
- [FIX] Python 3.13 で nanobind によるメモリーリークが発生している問題を修正しました
2025.2.1¶
- 日付:
2025-05-01
- 対応 Sora C++ SDK:
2025.3.0
- 対応 Sora:
2024.1.x / 2024.2.x
- 対応 Python:
3.11 / 3.12 / 3.13
- [FIX] PyPI を Organization に移行した事による Publishing ができない問題を修正しました
2025.2.0¶
- 日付:
2025-05-01
- 対応 Sora C++ SDK:
2025.3.0
- 対応 Sora:
2024.1.x / 2024.2.x
- 対応 Python:
3.11 / 3.12 / 3.13
- [UPDATE] nanobind を
2.5.0にアップデートしました - [UPDATE] Sora C++ SDK を
2025.2.0にアップデートしました- WEBRTC_BUILD_VERSION を
m136.7103.0.0にアップデートしました - BOOST_VERSION を
1.88.0にアップデートしました - CMAKE_VERSION を
4.0.1にアップデートしました - OPENH264_VERSION を
v2.6.0にアップデートしました
- WEBRTC_BUILD_VERSION を
2025.1.0¶
- 日付:
2025-03-19
- 対応 Sora C++ SDK:
2025.2.0
- 対応 Sora:
2024.1.x / 2024.2.x
- 対応 Python:
3.11 / 3.12 / 3.13
- [CHANGE] macOS Sonoma 13 のサポートを終了しました
- 今後は優先実装でのサポートとなります
- [CHANGE] Python 3.10 のサポートを終了しました
- 今後は優先実装でのサポートとなります
- SPEC 0 — Minimum Supported Dependencies を参考に直近 3 バージョンのサポートに変更しました
- [CHANGE]
Sora()からuse_hardware_encoderを廃止しました- 今後は
Sora.video_codec_preferenceを利用してください
- 今後は
- [CHANGE] mTLS で利用する
client_certとclient_keyをファイルパスではなくファイルの中身を指定するように変更しましたstr型からbytes型に変更しました- open("cert-key.pem", “rb”).read() などで読み込んだバイナリを渡すようにしてください
- [CHANGE] シグナリング接続時の
"type": "connect"時にmultistream項目を送らないように変更しました- 今回の変更により Sora 2022.1.0 以前には接続できなくなります
- [UPDATE] Sora C++ SDK を
2025.2.0にアップデートしました- WEBRTC_BUILD_VERSION を
m132.6834.5.8にアップデートしました - BOOST_VERSION を
1.87.0にアップデートしました - CMAKE_VERSION を
3.31.6にアップデートしました - OPENH264_VERSION を
2.6.0にアップデートしました
- WEBRTC_BUILD_VERSION を
- [UPDATE] nanobind を
2.5.0にアップデートしました - [ADD] マルチ転送フィルター用の
forwarding_filtersを追加しました- 将来的に
forwarding_filterは廃止する予定ですので、forwarding_filtersを利用してください
- 将来的に
- [ADD] Ubuntu 24.04 arm64v8 に対応しました
- Python 3.12 でのみ対応しています
- [ADD] Ubuntu 24.04 arm64 上で arm64v8 向けのビルドを行えるようにしました
- [ADD] Windows x86_64で OpenH264 を利用した H.264 のデコードとエンコードが利用可能になりました
- [ADD] AMD AMF を利用したハードウェアアクセラレーター機能に対応しました
- [ADD]
Sora.video_codec_preferenceを追加しました- コーデックのエンコード/デコードを細かく指定できるようになりました
- 詳細は
Sora.video_codec_preferenceをご確認ください
- [ADD] エンコード時の劣化優先順位を指定する
degradation_preferenceを追加しました- https://w3c.github.io/mst-content-hint/#degradation-preference-when-encoding
Sora.create_connection()の引数にdegradation_preferenceを追加しました- Enum 型
SoraDegradationPreferenceを追加しましたMAINTAIN_RESOLUTIONは解像度を優先MAINTAIN_FRAMERATEはフレームレートを優先BALANCEDはバランスを優先DISABLEDは無効
- [ADD]
Sora.create_connection()の引数にaudio_opus_paramsを追加しました- Opus のパラメーターを指定できるようになりました
- [ADD] WebRTC Encoded Transform に対応しました
SoraTransformableAudioFrameとSoraTransformableVideoFrameを追加しましたSoraAudioFrameTransformerとSoraVideoFrameTransformerを追加しましたcreate_connection()の引数にaudio_frame_transformerとvideo_frame_transformerを追加しましたSoraMediaTrackにset_frame_transformer()を追加しました- 詳細は WebRTC Encoded Transform をご確認ください
- [ADD] Python 3.13 に対応しました
- [ADD] CA 証明書を指定できる
ca_certを追加しました- open("ca.pem", “rb”).read() などで読み込んだバイナリを渡すようにしてください
- [ADD] 受信したシグナリングメッセージを取得できる
on_signaling_messageコールバックを追加しましたconnect/redirect/offer/answer/re-offer/re-answer/disconnectメッセージが取得できますswitchedメッセージはSoraConnection.on_switchedを利用してくださいpingとpongメッセージは取得できません- 詳細は
SoraConnection.on_signaling_messageをご確認ください
- [ADD] シグナリングの WebSocket 終了時のコードと理由が取得できる
on_ws_closeコールバックを追加しました- SDK 側で WebSocket が切断された際には
codeは1000、reasonは"SELF-CLOSED"が返ります - 詳細は
SoraConnection.on_ws_closeをご確認ください
- SDK 側で WebSocket が切断された際には
- [ADD] 転送フィルターを複数指定できるマルチ転送フィルターに対応しました
2024.3.0¶
- 日付:
2024-08-05
- 対応 Sora C++ SDK:
2024.7.0
- 対応 Sora:
2023.2.x / 2024.1.x
- 対応 Python:
3.10 / 3.11 / 3.12
- [CHANGE] Python 3.8 と 3.9 のサポートを終了しました
- 今後は優先実装でのサポートとなります
- [CHANGE] NVIDIA Jetson 向け sora_sdk バイナリを PyPI から削除しました
support/jetson-jetpack-6ブランチでメンテナンスを継続します- 今後は PyPI 経由ではなく、GitHub Releases から whl ファイルをダウンロードして利用してください
- [UPDATE] Sora C++ SDK を
2024.7.0にアップデートしました - [UPDATE] nanobind を
2.0.0にアップデートしました - [UPDATE] cmake を
3.29.6にアップデートしました - [UPDATE] libwebrtc のバージョンを
m127.6533.1.1にアップデートしました - [UPDATE] Windows 向けビルドを Windows Server 2022 x86_64 に変更しました
- [ADD] メッセージング機能の
headerに対応しました - [ADD] WebRTC Encoded Transform に対応しました
SoraTransformableAudioFrameとSoraTransformableVideoFrameを追加しましたSoraAudioFrameTransformerとSoraVideoFrameTransformerを追加しましたcreate_connection()の引数にaudio_frame_transformerとvideo_frame_transformerを追加しましたSoraMediaTrackにset_frame_transformer()を追加しました- 詳細は WebRTC Encoded Transform をご確認ください
- [ADD] macOS 向けビルドに macOS 14 arm64 を追加しました
- [ADD]
sora_sdkに型を追加しました - [ADD]
SoraConnectionにget_stats関数を追加しました - [ADD] Sora C++ SDK と libwebrtc のローカルビルドを利用できるようにしました
- [FIX]
SoraAudioSink.readがtimeoutを無視して失敗を返す問題を修正しました - [FIX] MSVC 内部コンパイルエラーにより Windows で nanobind のビルドができない問題を修正しました
2024.2.0¶
- 日付:
2024-04-09
- 対応 Sora C++ SDK:
2024.6.0
- 対応 Sora:
2023.2.x
- 対応 Python:
3.8 / 3.9 / 3.10 / 3.11 / 3.12
- [CHANGE] Lyra のサポートを廃止し、以下のオプションを削除しました
audio_codec_lyra_bitrateaudio_codec_lyra_usedtxcheck_lyra_version
- [UPDATE] Sora C++ SDK のバージョンを
2024.6.0に上げました - [UPDATE] WEBRTC_BUILD_VERSION を
m122.6261.1.0に上げました - [UPDATE] nanobind のバージョンを
1.9.2に上げて固定したバージョンとしました - [UPDATE] ruff の最小バージョンを
0.3.0に上げました - [UPDATE] BOOST_VERSION を
1.84.0に上げました - [UPDATE] Intel VPL を利用した
H.265に対応しました - [ADD] Sora Python SDK Samples を
examplesに移動しました - [ADD] シグナリング
"type": "switched"メッセージの受信を通知するon_switchedコールバックを追加しました - [FIX] Ubuntu 20.04 arm64 NVIDIA Jetson 5.1.2 で AV1 が正常に配信されない問題を修正しました
既知の問題¶
- Intel VPL を利用したときに H.264 の映像が正常に受信できない
- Intel VPL の問題と Sora C++ SDK の両方に問題が発生しています
- Sora C++ SDK の問題は修正され、動作が改善する予定です
- 完全な修正は Intel VPL の不具合が修正される必要があります
2024.1.0¶
- 日付:
2024-02-20
- 対応 Sora C++ SDK:
2024.1.0
- 対応 Sora:
2023.2.x
- 対応 Python:
3.8 / 3.9 / 3.10 / 3.11 / 3.12
- [CHANGE] Python フォーマッターを Ruff に変更しました
- [CHANGE]
SoraAudioSource.on_dataの引数名を変更しました - [CHANGE]
SoraVideoSource.on_capturedの引数名を変更しました - [CHANGE]
SoraVAD.analyzeの引数名を変更しました - [CHANGE]
SoraConnection.on_trackの引数をSoraMediaTrackに変更しました - [UPDATE] Python 3.12 に対応しました
- [UPDATE] nanobind の最小を
1.8.0に上げました - [UPDATE] Sora C++ SDK のバージョンを
2024.1.0に上げました- WebRTC m116 で cricket::Codec は protected になったので cricket::CreateVideoCodec に修正しました
- WebRTC m118 でパッケージディレクトリが変更されたためそれに追従しました
- WebRTC m120 の webrtc::EncodedImage API の変更に追従しました
- WEBRTC_BUILD_VERSION を
m120.6099.1.2に上げました - BOOST_VERSION を
1.83.0に上げました - CMAKE_VERSION を
3.27.7に上げました
- [UPDATE]
ForwardingFilterにversionとmetadataを追加しました- WebRTC SFU Sora の
2023.2.xへ追従しました
- WebRTC SFU Sora の
- [UPDATE] NVIDIA JetPack SDK を
5.1.2に上げました - [ADD]
SoraMediaTrackを追加しました - [ADD] 発話区間の検出が可能な
SoraVADを追加しました - [ADD] リアルタイム性を重視した
AudioStreamSinkを追加しました - [ADD] AudioStreamSink が返す音声フレームとして pickle が可能な
AudioFrameを追加しました
既知の問題¶
- C++ SDK の問題で NVIDIA JetPack SDK 5.1.2 での AV1 配信が正常に行えません
2024.2.0で問題は解消されています
2023.3.1¶
- 日付:
2023-07-13
- 対応 Sora C++ SDK:
2023.7.1
- 対応 Sora:
2023.1.x 以降
- 対応 Python:
3.8 / 3.9 / 3.10 / 3.11
- [FIX] C++ SDK のバージョンを 2023.7.2 にアップデートしました
- 特定のタイミングで切断が発生すると Closing 状態で止まってしまう問題を修正しました
2023.3.0¶
- 日付:
2023-07-06
- 対応 Sora C++ SDK:
2023.7.1
- 対応 Sora:
2023.1.x 以降
- 対応 Python:
3.8 / 3.9 / 3.10 / 3.11
- [CHANGE] signaling_url を signaling_urls へ変更しました
- 引数の型を str から List[str] に変更しました
2023.2.0¶
- 日付:
2023-07-03
- 対応 Sora C++ SDK:
2023.7.1
- 対応 Sora:
2023.1.x 以降
- 対応 Python:
3.8 / 3.9 / 3.10 / 3.11
- [ADD] Ubuntu 22.04 x86_64 で OpenH264 を利用した H.264 のデコードとエンコードが利用可能になりました
- 今までは HWA が無いと H.264 が利用できませんでしたが、 OpenH264 のバイナリをダウンロードし、設定することで利用可能になりました
2023.1.2¶
- 日付:
2023-06-28
- 対応 Sora C++ SDK:
2023.7.1
- 対応 Sora:
2023.1.x 以降
- 対応 Python:
3.8 / 3.9 / 3.10 / 3.11
- [FIX] Windows 版のバイナリが正常に動作しない問題を修正しました
2023.1.1¶
- 日付:
2023-06-27
- 対応 Sora C++ SDK:
2023.7.1
- 対応 Sora:
2023.1.x 以降
- 対応 Python:
3.8 / 3.9 / 3.10 / 3.11
- [FIX] connect 直後に disconnect すると落ちる問題を修正しました
2023.1.0¶
- 日付:
2023-06-19
- 対応 Sora C++ SDK:
2023.7.0
- 対応 Sora:
2023.1.x 以降
- 対応 Python:
3.8 / 3.9 / 3.10 / 3.11
- [ADD] PyPI に sora_sdk として公開しました
- [ADD] macOS 13 arm64 向けの whl パッケージへ対応しました
- Python 3.8 / 3.9 / 3.10 / 3.11 の Python のバージョンに対応しました
- [ADD] Windows 11 x86_64 向けの whl パッケージへ対応しました
- Python 3.8 / 3.9 / 3.10 / 3.11 の Python のバージョンに対応しました
- [ADD] Ubuntu 22.04 x86_64 向けの whl パッケージへ対応しました
- Python 3.8 / 3.9 / 3.10 / 3.11 の Python のバージョンに対応しました
- [ADD] Ubuntu 20.04 arm64 向けの whl パッケージへ対応しました
- NVIDIA Jetson のみに対応しています
- JetPack SDK 5 系のみに対応しています
- Python 3.8 にのみ対応しています
- [ADD] HTTP Proxy に対応しました
- [ADD] クライアント認証 (mTLS) に対応しました
- [ADD] サイマルキャスト機能に対応しました
- [ADD] スポットライト機能に対応しました
- [ADD] 転送フィルター機能に対応しました
- [ADD] 音声コーデック Lyra に対応しました
- [ADD] 映像コーデック VP9 と AV1 と H.264 のパラメーター設定に対応しました
- [ADD] 音声ストリーミングの言語コードに対応しました
- [ADD] データチャネルメッセージング対応しました
data_channel_signalingを指定できるようにしましたignore_disconnect_websocketを指定できるようにしました
- [ADD] データチャネルシグナリング対応しました
on_messageコールバック有効化しましたdata_channelsを指定できるようにしました
- [ADD] 音声と映像の無効化を利用可能にしました
- [ADD] 音声と映像の送受信 / 送信 / 受信サンプルを追加しました
- [ADD] メッセージング機能の 送受信 / 送信 / 受信サンプルを追加しました