2024.2.x から 2025.1.x への移行

概要

2024.2.x から 2025.1.x への移行について変更点や注意点をまとめています。

もし不明点がある場合はサポートまでお問い合わせください。

Chrome 137 以降の WebRTC の仕様変更に伴う影響

Google Chrome 137 の仕様変更により、 以下の条件を全て満たす場合に、映像が受信できなくなる問題が発生しておりました。

  • 1 チャネルで 3 接続以上ある

  • 1 チャネルで 2 種類以上の映像コーデックを利用している

  • 異なる映像コーデックを送信するクライアント(ロールが sendrecv または sendonly)が 2 接続以上いる

Sora 2025.1.0 では、上記の条件を満たす場合でも映像が受信できるように対応しましたので設定は特に不要です。

帯域推定機能の導入による画質への影響について

これまでは回線が不安定になった場合、クライアント側の帯域推定にのみ依存していましたが、 帯域推定機能の導入により、サーバー側でも帯域推定を行えるようになり、 より適切なビットレートを選択できるようになりました。 そのため、回線が不安定な際には、配信される映像の画質がこれまでより低く感じられる場合があります。

これは、これまで適切なビットレートを選択できておらず、 回線状況に対して過剰なビットレートで映像配信を行い、結果的により不安定になっていたためです。

今回の変更により、回線状況に応じた適切なビットレートで配信されるようになり、 結果として、より安定した映像配信が実現できるようになりました。

レガシーストリーム機能を廃止しました

シグナリング接続時に "multistream": false を指定して接続した場合、バリデーションエラーになります。

詳細は レガシーストリーム(非マルチストリーム)機能からマルチストリームへの移行 をご確認ください。

multistream 項目の廃止

レガシーストリーム廃止に伴い、 multistream 項目をウェブフック、ログ、API から削除しました。

session.vanished ウェブフックを廃止しました

Sora Exporter を利用することで、より柔軟なセッションの監視ができることから、 session.vanished ウェブフックを廃止しました。

移行に際する不明点などはサポートまでお問い合わせください。

legacy_signaling_error の廃止

2024.1.x までのシグナリングエラー時のログ出力先やウェブフック connection.failed の通知タイミングを維持する legacy_signaling_error を廃止しました。

今後は以下の挙動になります。

  • シグナリング時のエラーが sora.jsonl に出力されません

  • シグナリング時のエラーが signaling_error.jsonl に出力されます

  • 認証失敗時のエラーが sora.jsonl に出力されません

  • 認証失敗時のエラーが signaling_error.jsonl に出力されます

  • イベントウェブフック connection.failed が認証失敗時には通知されません

  • イベントウェブフック connection.failed が認証成功後に接続に失敗した時のみ通知されます

認証失敗時のエラーログの出力

認証失敗時のログを sora.jsonl から signaling_error.jsonl に出力します。

認証失敗時のエラーはシグナリングエラーと同等として扱います。 sora.jsonlERROR で出力されるシグナリング失敗のエラーメッセージは connection.created 以降に変更します。

イベントウェブフック connection.failed の挙動

connection.failed はシグナリング時にエラーが発生した場合通知する仕組みでしたが、 今後は認証が成功した後に接続が失敗した場合のみ通知されます。

これにより、認証が失敗した場合には connection.failed ウェブフックは通知されません。

WHIP/WHEP 時のリソース URL をセッション URL に変更しました

WHIP の RFC 9725 化に伴い WHIP/WHEP 時のリソース URL をセッション URL に変更しました。

  • /whip-session/:channel_id/:secret/ を追加しました

  • /whep-session/:channel_id/:secret/ を追加しました

  • /whip-resource/:channel_id/:secret/ を非推奨にしました

  • /whep-resource/:channel_id/:secret/ を非推奨にしました

  • 2025 年 12 月リリース予定の Sora にて /whip-resource/:channel_id/:secret/ は廃止します

  • 2025 年 12 月リリース予定の Sora にて /whep-resource/:channel_id/:secret/ は廃止します

NGINX の設定変更

NGINX を利用している場合は Sora 2025.1.0 デプロイ時に location の設定を resource から session に変更してください。

location ~ ^/(whip|whip-session|whep|whep-session)/ {
   # ...
}

クラスター利用時のローリングアップデート

クラスター機能を利用している場合、 Sora 2025.1.0 へローリングアップデートを行う前に whip-sessionwhep-session を許可するようにしてください。

location ~ ^/(whip|whip-resource|whip-session|whep|whep-resource|whep-session)/ {
   # ...
}

ローリングアップデートが完了した後、 whip-resourcewhep-resource を削除してください。

location ~ ^/(whip|whip-session|whep|whep-session)/ {
   # ...
}

ネットワーク状態のシグナリング通知機能の変更

実験的機能として 2019 年から提供していた、シグナリング経由でのネットワーク状態通知機能を変更しました。

2019 年にリリースした当時は、クライアント側で情報を得ることがほとんどできず、 Sora 側から配信側へ送っている再送要求の頻度を送ることで、 簡易的ではありますが、配信側がどの程度不安定なのかを通知する仕組みとして提供してきました。

しかし、現在はクライアント側で多くの統計情報が取得できるため、形骸化している機能でした。

今回 Sora に帯域推定機能を実装したことにより、 Sora が把握した帯域推定の情報を視聴側に返すようにしました。 この機能はデフォルトで有効になっています。

これにより、視聴側はより詳細なネットワーク状況を知ることができるようになりました。 今回の変更により、送信のみへの通知は行われなくなりますのでご注意ください。

変更に伴うレガシー設定の非推奨と廃止

機能変更に伴い、今までの簡易的な不安定度の通知機能の役目は終えたと判断し、 2025 年 6 月リリースの Sora にて非推奨とし、2025 年 12 月リリース予定の Sora にて廃止します。

レガシーなネットワーク状態のシグナリング通知機能はデフォルトで無効になっていますので、 利用される場合は legacy_signaling_notify_network_statustrue にしてください。

ICE コネクションステート機能のタイムアウトを認証成功時に指定できるようにしました

ICE コネクションステート機能のタイムアウト値を認証成功時に指定できるようにしました。

認証成功時に ice_connection_state_disconnected_timeoutice_connection_state_failed_timeout を払い出せるようになりました。

  • authz_ice_connection_state_disconnected_timeout

  • authz_ice_connection_state_failed_timeout

ICE コネクションステート機能のタイムアウト値の古い設定を非推奨にしました

ICE コネクションステート機能のタイムアウトの値を認証成功時に払い出せる仕組みを追加したため、 sora.confice_connection_state_disconnected_timeoutice_connection_state_failed_timeout を非推奨にし、 あらたに default_ice_connection_state_disconnected_timeoutdefault_ice_connection_state_failed_timeout を追加しました。

組み込み TURN 機能無効の設定を非推奨にしました

組み込み TURN 機能は 2016 年 6 月にリリースされ、長年安定して動作してきたため、 組み込み TURN 機能を無効にする設定を非推奨にし、無効にする設定を 2025 年 12 月リリース予定の Sora にて廃止します。

  • 2025 年 6 月リリースの Sora にて組み込み TURN 機能を無効にする turnfalse にする設定を非推奨にしました

  • 2025 年 12 月リリース予定の Sora にて組み込み TURN 機能の設定 turn を廃止し、組み込み TURN 機能を無効にすることができなくなります

WHIP/WHEP の TURN 機能をデフォルトで有効にしました

2024 年 7 月リリースの OBS 30.2 で WHIP の TURN に対応したため、 WHIP/WHEP の TURN をデフォルトで有効にしました。

注釈

WHEP はまだ OBS にマージされていません。

WHIP/WHEP の TURN 機能を無効にする設定を非推奨にしました

WHIP/WHEP の TURN 機能をデフォルトで有効にしたため、無効にする設定を非推奨にしました。

  • 2025 年 6 月リリースの Sora にて WHIP/WHEP の TURN を無効にする whip_turnfalse にする設定を非推奨にしました

  • 2025 年 12 月リリース予定の Sora にて WHIP/WHEP の TURN 機能の設定を廃止し、WHIP/WHEP の TURN を無効にすることができなくなります

注釈

今後、TURN の仕組みを実装していないクライアント向けに、シグナリングの query-string に turn=false を追加することで、TURN を無効にすることができるようにすることを検討しています。

メディア配信ワーカー自動スケール対応

メディア配信ワーカー機能は、Sora の内部で音声や映像を配信するワーカーを複数用意することで、 1 チャネルで高ビットレートの映像をより多くのクライアントに配信できるようにする機能です。

Sora 2024.2.x までは事前に配信ワーカー数を設定する仕組みでしたが、 Sora 2025.1.0 から視聴者数に応じて動的にワーカー数を変更する機能になりました。

そのため利用者がワーカー数を意識する必要がなくなりました。

2024.2.x まで指定できた media_publish_worker_number は不要になったため廃止しました。

クラスターリレーのツリー化

クラスターリレー機能を利用した際に、ノード数が増えるとリレー数が増えてノード負荷が高くなる問題を解決するために、リレーをツリー構造化しました。

リレーをツリー構造化することで、ノードあたりのリレー数を削減し、ノード負荷を分散することができるようになりました。

セッションウェブフック session.created の払い出しに group_id の追加

セッションをグループ化する group_id を指定できるようになりました。

session.created ウェブフックの戻り値に group_id 項目でセッションのグループ ID を含めることができます。

ListSessions API で group_id を指定することで、指定した group_id のセッションのみを表示できるようになりました。

主にマルチテナントで Sora を利用している際に、セッションのグループ化を目的としている機能です。

セッション単位での最大同時接続数を制限する max_connections の追加

session.created の払い出しで、セッション単位での最大同時接続数を制限する max_connections を追加しました。

トライアルでは trial_max_connections という項目でしたが、正式版に伴い max_connections に変更しました。 trial_max_connections は 2025 年 12 月リリース予定の Sora にて廃止します。

詳細は max_connections を確認してください。

  • trial_max_connections は 2025 年 12 月リリース予定の Sora にて廃止します。

  • trial_max_connectionsmax_connections を同時に指定した場合は max_connections が優先されます

  • trial_max_connections 廃止後は無視します

クラスターのローリングアップデートについて

2024.2.x から 2025.1.x へのローリングアップデートができます。

1 台ずつローリングアップデートを行ってください。

2024.1.x から 2025.1.x へのローリングアップデートはできません。 必ず 2024.2.x を経由してから 2025.1.x へアップデートを行ってください。

© Copyright 2025, Shiguredo Inc Created using Sphinx 8.2.3