リリースノート¶
- CHANGE
後方互換性のない変更
- UPDATE
後方互換性がある変更
- ADD
後方互換性がある追加
- FIX
バグ修正
2023.1.2¶
バグフィックスアップデート
- リリース:
2023-08-10
変更履歴¶
[FIX] Safari 側の問題により Safari 14 系および Safari 15 系の一部で Sora に接続できない問題を修正しました
Safari 15.6 以降では問題が修正されていることを確認しています
2023.1.1¶
バグフィックスアップデート
- リリース:
2023-07-14
変更履歴¶
[ADD] connection ログに
ice_connection_state
という ICE コネクション機能の統計情報を追加しましたサポートにて問題をより素早く解決しやすくするための追加です
[ADD] connection ログに
network_status
に不安定レベル毎の統計情報を追加しましたサポートにて問題をより素早く解決しやすくするための追加です
[ADD] GetStatsConnection API に
ice_connection_state
の統計情報を追加しました[ADD] GetStatsConnection API に
network_status
にレベル毎の統計情報を追加しました[FIX] CentOS 7 x86_64 利用時にセグメンテーション違反で Sora が落ちてしまう問題を修正しました
[FIX] DTLS 再ネゴシエーションの挙動を修正しました
[FIX] スポットライト機能利用時に OBS での WHIP が利用できない問題を修正しました
新しく WHIP エンドポイント URL 指定時に
spotlight=true
を指定することで利用できるようにしましたただし、音声がそのままでは配信されないため FocusSpotlightFixed API を利用して音声を配信する必要があります
[FIX] ICE コネクションステート機能で
disconnected
時のクライアント状態確認の挙動を修正しました[FIX] PutSignalingNotifyMetadata API の結果の誤字を修正しました
[FIX] JoinCluster API のエラー応答の誤字を修正しました
2023.1.0¶
メジャーアップデート
- リリース:
2023-06-28
サポート期間変更¶
Sora 2023.1.0 より、サポート提供期間をメジャーアップデートがリリースされた日から 12 ヶ月後の月末最終日まで に変更しました
2023年 6 月リリースの Sora 2023.1.0 およびその後リリースされる可能性のある Sora 2023.1.x は、2024 年 6 月 30 日までサポート対象となります
詳細は サポートライフサイクル をご確認ください。
ハイライト¶
OBS で WebRTC を利用した配信を実現する WHIP に対応しました
詳細は OBS (WHIP) 機能 をご確認ください
VP9 / AV1 でのサイマルキャストに対応しました
詳細は VP9 と AV1 でのサイマルキャスト をご確認ください
メディアストリームを柔軟に制御するための 転送フィルター機能 を追加しました
音声ストリーミング機能に自動開始/停止機能を追加しました
詳細は 自動開始/停止機能 をご確認ください
IPv6 のみの環境での動作に対応しました
詳細は ipv6_only をご確認ください
互換なしの変更情報¶
移行用の設定である legacy_webhook_audio_video_json_structure の設定のデフォルトを
false
に変更しました移行用の設定である legacy_log_format の設定のデフォルトを
false
に変更しました詳細は sora.conf の legacy_log_format の廃止 をご確認ください
移行用の設定である legacy_log_extension の設定のデフォルトを
false
に変更しました詳細は sora.conf の legacy_log_extension の廃止 をご確認ください
廃止情報¶
Ubuntu 18.04 向けパッケージのサポートを終了しました
詳細は Ubuntu 18.04 サポートの終了 をご確認ください
sora.conf
のsplit_archive_legacy_prefix
を廃止しました詳細は sora.conf の split_archive_legacy_prefix の廃止 をご確認ください
sora.conf
のdefault_multistream
を廃止しました詳細は sora.conf の default_multistream の廃止 をご確認ください
sora.conf
のdcsctp_heartbeat_interval
を廃止しました詳細は DataChannel で利用している SCTP 関連の実験的な設定の廃止 をご確認ください
sora.conf
のdcsctp_slow_start_tcp_style
を廃止しました詳細は DataChannel で利用している SCTP 関連の実験的な設定の廃止 をご確認ください
変更履歴¶
[CHANGE] データチャネル関連の設定である
dcsctp_heartbeat_interval
を廃止しました[CHANGE] データチャネル関連の設定である
dcsctp_slow_start_tcp_style
を廃止しました[CHANGE] サイマルキャスト利用時に
"active": false
を指定したストリームは、~r0
といった SDP が生成されますr1 と r2 が false の場合は
a=simulcast:recv r0;~r1;~r2
のような SDP が生成されますこれは RFC 8853: Using Simulcast in SDP and RTP Sessions に準拠しています
[CHANGE]
sora.conf
のウェブフックの audio と video 項目のレガシーな入れ子構造を利用する legacy_webhook_audio_video_json_structure のデフォルト値をfalse
に変更しましたこれは移行用設定です
[CHANGE]
sora.conf
のログフォーマットのレガシー形式を維持する legacy_log_format のデフォルト値をfalse
に変更しましたこれは移行用設定です
[CHANGE]
sora.conf
の JSONL 形式で出力しているログのレガシー拡張子を.log
に維持する legacy_log_extension のデフォルト値をfalse
に変更しましたこれは移行用設定です
[UPDATE] RHEL 9.2 に対応しました
[UPDATE] RHEL 8.8 に対応しました
[ADD] 録画イベントウェブフック
recording.started
にdata.start_timestamp
を追加しました[ADD] 録画イベントウェブフック
recording.started
にdata.split_duration
を追加しました[ADD]
sora.conf
に IPv6 アドレスのみを利用する ipv6_only の設定を追加しました[ADD] クラスター機能が有効な際、セッションウェブフックに
external_signaling_url
項目を追加しましたsora.conf
の external_signaling_url に指定されている値がそのまま入ります
[ADD] モードが
block_new_connection
の場合は、接続に失敗する仕組みを追加しました[ADD] イベントウェブフックにログの書き込みが成功したかどうかを示す
log_written
フラグを追加しましたイベントウェブフックログの書き込みが成功した場合は
"log_written": true
が含まれますイベントウェブフックログの書き込みが失敗した場合は
"log_written": false
が含まれますイベントウェブフックログには常に
log_written
が含まれます
[ADD] 録画機能で録画ファイル生成に失敗したファイル情報を
recording.report
ウェブフックやファイルにfailed_archives
という項目で追加しました[ADD] 録画機能の
recording.report
イベントウェブフックに"file_written"
フラグを追加しましたreport-*.json
ファイルの書き込みに成功した場合"file_written": true
が含まれますreport-*.json
ファイルの書き込みに失敗した場合"file_written": false
が含まれますreport-*.json
ファイルには常にfile_written
が含まれます
[FIX] IPv6 のみの環境で Firefox が正常に動作しない問題を修正しました
[FIX] Sora 終了中に HTTP API が呼ばれるとクラッシュログが出力される問題を修正しました
[FIX] 認証ウェブフックで
simulcast
がfalse
の場合でもsimulcast_rid
が含まれていた問題を修正しましたsimulcast
がfalse
の場合はsimulcast_rid
は含まれなくなります
[FIX] 録画機能で H.264 でまれに録画が失敗してしまう問題を修正しました
[FIX] スポットライト機能でフォーカスが当たっていない場合でも、無音の音声パケットが配信されてしまう問題を修正しました
パッケージファイル名の変更¶
OS 名とバージョンの間に -
を入れるようにし、x86_64 もアーキテクチャを追加しました。
展開後のディレクトリにアーキテクチャは含まれません。
[CHANGE]
sora-2023.1.0-ubuntu22.04-arm64v8.tar.gz
からsora-2023.1.0-ubuntu-22.04-arm64v8.tar.gz
に変更しましたubuntu22.04
をubuntu-22.04
に変更しました
[CHANGE]
sora-2023.1.0-ubuntu20.04-arm64v8.tar.gz
からsora-2023.1.0-ubuntu-20.04-arm64v8.tar.gz
に変更しましたubuntu20.04
をubuntu-20.04
に変更しました
[CHANGE]
sora-2023.1.0-ubuntu22.04.tar.gz
からsora-2023.1.0-ubuntu-22.04-x86_64.tar.gz
に変更しましたubuntu22.04
をubuntu-22.04
に変更しましたファイル名に
-x86_64
を追加しました
[CHANGE]
sora-2023.1.0-ubuntu20.04.tar.gz
からsora-2023.1.0-ubuntu-20.04-x86_64.tar.gz
に変更しましたubuntu20.04
をubuntu-20.04
に変更しましたファイル名に
-x86_64
を追加しました
[CHANGE]
sora-2023.1.0-ubuntu20.04.tar.gz
からsora-2023.1.0-ubuntu-20.04-x86_64.tar.gz
に変更しましたubuntu20.04
をubuntu-20.04
に変更しましたファイル名に
-x86_64
を追加しました
[CHANGE]
sora-2023.1.0-rhel9.2.tar.gz
からsora-2023.1.0-rhel-9.2-x86_64.tar.gz
に変更しましたrhel9.2
をrhel-9.2
に変更しましたファイル名に
-x86_64
を追加しました
[CHANGE]
sora-2023.1.0-rhel8.8.tar.gz
からsora-2023.1.0-rhel-8.8-x86_64.tar.gz
に変更しましたrhel8.8
をrhel-8.8
に変更しましたファイル名に
-x86_64
を追加しました
[CHANGE]
sora-2023.1.0-centos7.9.tar.gz
からsora-2023.1.0-centos-7.9-x86_64.tar.gz
に変更しましたcentos7.9
をcentos-7.9
に変更しましたファイル名に
-x86_64
を追加しました
セッション終了 API¶
[ADD] 指定したセッションを終了させる TerminateSession API を追加しました
channel_id
の指定は必須で、session_id
がオプションで指定できます
ヘルスチェック¶
[ADD]
http://<IP アドレス>:5000/.ok
で Sora のヘルスチェックが可能になりました単体利用時には問題が無ければ常に 200 OK を返します
クラスター利用時には
initial
とblock_new_connection
モード時には503 Service Unavailable
を返します
詳細は ヘルスチェック機能 をご確認ください。
シグナリング通知¶
[ADD] シグナリング通知の
"event_type": "connection.created"
にtimestamp
を追加しましたdata にも
"data": [{"timestamp": "2023-06-28T10:00:00.999999", ...}, .. ]
のようにtimestamp
が含まれるようになります
[ADD] シグナリング通知の
"event_type": "connection.created"
にtimestamp
を含める設定 signaling_notify_connection_created_timestamp をsora.conf
に追加しましたデフォルトは
true
です
映像コーデックパラメーター指定機能¶
[ADD] ウェブフックに映像コーデックパラメーター
"video_vp9_params": {"profile_id": 0}
を追加しましたこの設定を利用する場合 legacy_webhook_audio_video_json_structure が
false
である必要があります
[ADD] ウェブフックに映像コーデックパラメーター
"video_av1_params": {"profile": 0}
を追加しましたこの設定を利用する場合 legacy_webhook_audio_video_json_structure が
false
である必要があります
[ADD] ウェブフックに映像コーデックパラメーター
"video_h264_params": {"profile_level_id": ""}
を追加しましたこの設定を利用する場合 legacy_webhook_audio_video_json_structure が
false
である必要があります
[ADD] シグナリング接続時に H.264 のプロファイルレベル ID を
"video": {"codec_type": "H264", "h264_params": {"profile_level_id": "42e01f"}
のように指定できるようになりましたこの指定を利用する場合は signaling_h264_params が
true
である必要がありますh264_params
を指定する場合は、codec_type
はH264
である必要があります
[ADD] シグナリング接続時に VP9 のプロファイル ID を
"video": {"codec_type": "VP9", "vp9_params": {"profile_id": 0}}
のように指定できるようになりましたこの指定を利用する場合は signaling_vp9_params が
true
である必要がありますvp9_params
を指定する場合は、codec_type
はVP9
である必要がありますprofile_id には 0 から 3 までの値を指定できます
[ADD] シグナリング接続時に AV1 のプロファイルを
"video": {"codec_type": "AV1", "av1_params": {"profile": 0}}
のように指定できるようになりましたこの指定を利用する場合は signaling_av1_params が
true
である必要がありますav1_params
を指定する場合は、codec_type
はAV1
である必要がありますprofile には 0 から 2 までの値を指定できます
[ADD] 認証成功時払い出しに VP9 のプロファイル ID を指定できる
"video_vp9_params": {"profile_id": 0}
を追加しましたこの設定を利用する場合 legacy_webhook_audio_video_json_structure が
false
である必要がありますprofile_id には 0 から 3 までの値を指定できます
[ADD] 認証成功時払い出しに AV1 のプロファイルを指定できる
"video_av1_params": {"profile": 0}
を追加しましたこの設定を利用する場合 legacy_webhook_audio_video_json_structure が
false
である必要がありますprofile には 0 から 2 までの値を指定できます
[ADD] 認証成功時払い出しに H.264 のプロファイルを指定できる
"video_h264_params": {"profile_level_id": "42e01f"}
を追加しましたこの設定を利用する場合 legacy_webhook_audio_video_json_structure が
false
である必要がありますh264_profile_level_id
は 2024 年 6 月リリース予定の Sora にて廃止します
[ADD]
sora.conf
に VP9 のプロファイル ID のデフォルト値を指定する default_vp9_param_profile_id を追加しましたデフォルトは 0 が設定されています
0 から 3 までの値を指定できます
[ADD]
sora.conf
に AV1 のプロファイルのデフォルト値を指定する default_av1_param_profile を追加しましたデフォルトは 0 が設定されています
0 から 2 までの値を指定できます
[ADD]
sora.conf
に H.264 のプロファイルレベル ID のデフォルト値を指定する default_h264_param_profile_level_id を追加しました既存の default_h264_profile_level_id は 2024 年 6 月リリース予定の Sora にて廃止します
OBS (WHIP) 対応¶
OBS が対応予定の WebRTC (WHIP) で配信ができるようになりました。
[ADD]
sora.conf
に OBS (WHIP) を有効にする whip を追加しましたデフォルトは
false
です
[ADD]
sora.conf
に OBS (WHIP) の Bearer トークンを認証ウェブフックのmetadata
に対応させるキーを指定する whip_bearer_token_metadata_key を追加しましたOBS (WHIP) からの接続についても Bearer トークンを利用した認証機能が利用できます
デフォルトは未指定です
[ADD] WHIP 向けエンドポイント URL
https://example.com/whip/<channel-id>
を追加しましたクエリー文字列で
client_id
とbundle_id
を指定できるようになりました
[ADD] WHIP 向けリソース URL
https://example.com/whip-resource/<channel-id>/<secret>
を追加しましたPATCH と DELETE メソッドに対応しています
[ADD] WHIP を利用した際、認証ウェブフックに
whip: true
を追加しましたWHIP を利用していない接続の場合はこの項目は含まれません
詳細は OBS (WHIP) 対応機能 をご確認ください。
VP9 / AV1 サイマルキャスト対応¶
[UPDATE] VP9 と AV1 でのサイマルキャスト機能に対応しました
Chrome 113 以降でスポットライト機能にて VP9 と AV1 が利用できるようになりました
Edge 113 以降でスポットライト機能にて VP9 が利用できるようになりました
[UPDATE] 認証成功時の払い出し
simulcast_encodings
とspotlight_encodings
でscalabilityMode
を指定できるようになりましたデフォルトでは
scalabilityMode
にL1T3
が設定されています
[UPDATE] simulcast_encodings_file と spotlight_encodings_file で
scalabilityMode
を指定できるようになりました
詳細は scalabilityMode をご確認ください。
Lyra 録音機能¶
[ADD] 録画機能に Lyra コーデックを利用した際に WebM ファイルで録音する仕組みを追加しました
詳細は Lyra コーデックの録画ファイル をご確認ください。
転送フィルター機能¶
今まで PauseRtpStream / ResumeRtpStream API で実現していたメディアストリームの停止/再開をより細かく、柔軟に設定をできるようにした、 転送フィルター機能を追加しました。
[ADD] セッション作成時
forwarding_filter
を指定することでチャネル単位の転送フィルターを追加できるようになりました[ADD] シグナリング接続時に
forwarding_filter
を指定することで接続単位の転送フィルターを追加できるようになりました[ADD] 認証成功時に
forwarding_filter
を指定することで接続単位の転送フィルターを追加できるようになりました[ADD] チャネル単位でチャネルとコネクションの転送フィルターを確認できる ListForwardingFilters API を追加しました
[ADD] チャネル単位の転送フィルターを作成する CreateChannelForwardingFilter API を追加しました
[ADD] チャネル単位の転送フィルターを更新する UpdateChannelForwardingFilter API を追加しました
[ADD] チャネル単位の転送フィルターを削除する DeleteChannelForwardingFilter API を追加しました
[ADD] コネクション単位の転送フィルターを作成する CreateConnectionForwardingFilter API を追加しました
[ADD] コネクション単位の転送フィルターを更新する UpdateConnectionForwardingFilter API を追加しました
[ADD] コネクション単位の転送フィルターを削除する DeleteConnectionForwardingFilter API を追加しました
[ADD] 転送フィルターで転送がブロックされたタイミングでシグナリング通知する機能を追加しました
[ADD] 転送フィルターで転送がブロックが解除されたタイミングでシグナリング通知する機能を追加しました
[ADD]
sora.conf
に転送フィルターをシグナリング経由で指定できるかどうかを設定する signaling_forwarding_filter を追加しましたデフォルト は
false
です
[ADD]
sora.conf
に転送フィルターのブロックの状態が変わったタイミングでシグナリング通知を飛ばすかどうかを設定する signaling_notify_forwarding_filter を追加しましたデフォルト は
true
です
詳細は 転送フィルター機能 をご確認ください。
SDP 再利用機能¶
今までマルチストリーム利用した際に、クライアント切断してもその SDP が残ってしまう問題がありました。 今回のリリースで、SDP を再利用する仕組みにより SDP が残る問題を解決しました。
[CHANGE]
recycle_media_section
がtrue
の際に、SDP を再利用する仕組みを追加しました[ADD]
sora.conf
に SDP の再利用を行う recycle_media_section 設定を追加しましたデフォルトは
true
です
音声ストリーミング機能¶
[ADD] 音声ストリーミングの結果通知の状態を確認する ListAudioStreamingResultPushState API を追加しました
[ADD] 音声ストリーミング機能にサブスクライブが 0 になると音声ストリーミングを停止し、サブスクライブが 1 以上になると音声ストリーミングを開始する機能を追加しました
この機能はセッション開始時に指定可能です
この機能が有効になっている場合は音声ストリーミング開始/終了 API は利用できません
[ADD] セッションウェブフックの払い出しに音声ストリーミングの自動開始と停止を有効にする
audio_streaming_auto
を追加しましたこの設定を利用する場合は必ず
audio_streaming
をtrue
で払い出す必要があります
[ADD]
sora.conf
に音声ストリーミングのウェブフックを送信するかどうかを設定する ignore_audio_streaming_webhook を追加しましたデフォルトは
true
で、送信しません
[ADD] 音声ストリーミング機能の開始のウェブフック
audio-streaming.started
を追加しましたsora.conf
にて ignore_audio_streaming_webhook をfalse
にすることで送信します
[ADD] 音声ストリーミング機能の終了のウェブフック
audio-streaming.stopped
を追加しましたsora.conf
にて ignore_audio_streaming_webhook をfalse
にすることで送信します
WebSocket 経由シグナリングでの ping / pong / stats のインターバルやタイムアウトの設定¶
WebSocket 経由でのシグナリングにおいて、 "type": "ping"
や "type": "pong"
のインターバルやタイムアウトを設定できるようになりました。
また "type": "ping"
送信時の "stats": true
にする間隔を指定できるようになりました。
[CHANGE]
"type": "ping"
時におくる"stats": true
の間隔を 5 秒から 30 秒に変更しました[ADD]
sora.conf
に ping を送信する間隔を指定する websocket_signaling_ping_interval 設定を追加しましたデフォルトは
5 s
です最小は
5 s
です最大は
300 s
です
[ADD]
sora.conf
に pong のタイムアウト時間を指定する websocket_signaling_pong_timeout 設定を追加しましたデフォルトは
60 s
です最小は
60 s
です最大は
600 s
です
[ADD]
sora.conf
に ping 送信時に"stats": true
にする間隔を指定する websocket_stats_timer_interval 設定を追加しましたデフォルトは
30 s
です最小は
30 s
です最大は
600 s
です
クラスター機能利用時のディスク障害時の対応を追加¶
[CHANGE] クラスター利用時に
block_new_connection
モードへ遷移した場合には新規接続のリダイレクトを行わないように変更しました[ADD] クラスター利用時にディスク障害が発生した際に、
block_new_connection
モードへ遷移する機能を追加しました
2022.2.3¶
- リリース:
2023-02-08
変更履歴¶
[FIX] 依存している OpenSSL を 3.0.8 にアップデートしました
[FIX] 2023 年 4 月 4 日リリース予定の Chrome M112 でシグナリング時に接続が必ず失敗してしまう問題を修正しました
[FIX] ディスク障害が発生してログの書き込みに失敗した際に、障害が復旧した後でもログが書き込めなくなることがある問題を修正しました
2022.1.4¶
- リリース:
2023-02-08
変更履歴¶
[FIX] 2023 年 4 月 4 日リリース予定の Chrome M112 でシグナリング時に接続が必ず失敗してしまう問題を修正しました
2022.2.2¶
- リリース:
2023-01-05
変更履歴¶
[FIX] 音声ストリーミング機能で
sora.conf
の default_audio_streaming_result_push がtrue
の際、プッシュ通知が行われない問題を修正しました[FIX] 音声ストリーミング機能でロールが
recvonly
の場合にプッシュ通知が受信できない問題を修正しました[FIX] 音声ストリーミング機能で API を利用して音声ストリーミングを開始した際、通知が正常に行われない問題を修正しました
2022.2.1¶
- リリース:
2022-12-21
変更履歴¶
[FIX] 開発ツールが Safari / Mobile Safari / Firefox で動作しない問題を修正しました
2022.2.0¶
- リリース:
2022-12-21
ハイライト¶
sora ログと internal ログを JSONL 形式で出力するようになりました
Google が公開した超低ビットレートコーデック Lyra に対応しました
音声パケットを HTTP/2 経由で出力する音声ストリーミング機能を追加しました
録画開始ととアーカイブ開始のウェブフックを追加しました
ウェブフックが mTLS と CA 証明書の指定に対応しました
互換なしの変更情報¶
実験的機能であるセッションウェブフックのログ出力を req/res 形式に変更しました
実験的機能であるセンシティブデータ向け設定
redact_archive_metadata_sensitive_data
とredact_api_sensitive_data
を廃止しました録画メタデータファイルと API はセンシティブなデータがあっても編集を行わないようにしました
クラスター機能の仕組みを変更したため互換性がなくなりました、クラスターの再構築をお願いします
変更履歴¶
[FIX] DTLS 処理終了時に起きていた問題を修正しました
[FIX] 録画ウェブフックの
expired_at
が秒単位の UNIX Time ではなくマイクロ秒になっていたのを修正しました[FIX] 録画ウェブフックの
split-archive.available
とsplit-archive-*.json
に offset が含まれていなかったのを修正しました[FIX] ULPFEC が有効でな状態でパケロス発生時に録画に失敗することがある問題を修正しました
[FIX] 録画機能のウェブフックやファイルに含まれる統計値の名前 total_audio_discarded が間違っていたのを修正しました
JSONL 形式でのログ出力¶
[ADD]
sora.conf
にログフォーマットのレガシー形式を維持するlegacy_log_format
を追加しましたデフォルトは
true
ですこれは移行用設定です
[ADD]
sora.conf
に JSONL 形式で出力しているログのレガシー拡張子を.log
に維持するlegacy_log_extension
を追加しましたデフォルトは
true
ですこれは移行用設定です
[ADD]
sora.conf
のlegacy_log_format
をfalse
にすることで以下のログは JSONL 形式で出力されますsora ログ
internal ログ
signaling ログ
api ログ
auth_webhook ログ
session_webhook ログ
session_webhook_error ログ
event_webhook ログ
event_webhook_error ログ
connection ログ
[ADD]
sora.conf
のlegacy_log_extension
をfalse
にすることで JSONL 形式で出力されているログファイルの拡張子が.log
から.jsonl
に変更されますsora.log
がsora.jsonl
に変更されますinternal.log
がinternal.jsonl
に変更されますsignaling.log
がsignaling.jsonl
に変更されますapi.log
がapi.jsonl
に変更されますauth_webhook.log
がauth_webhook.jsonl
に変更されますsession_webhook.log
がsession_webhook.jsonl
に変更されますsession_webhook_error.log
がsession_webhook_error.jsonl
に変更されますevent_webhook.log
がevent_webhook.jsonl
に変更されますevent_webhook_error.log
がevent_webhook_error.jsonl
に変更されますconnection.log
がconnection.jsonl
に変更されます
[CHANGE] サポート用ログファイルである
connection_created_wait_timeout_error/<timestamp>_<connection_id>.json
の拡張子を.json
から.jsonl
に変更しました
クラスター機能¶
[CHANGE] クラスターの仕組みを変更したため、2022.1 系までのクラスターの仕組みとは互換性がありません
クラスターの初期化が必要になります
[ADD] クラスター初期化に利用する InitCluster API を追加しました
[CHANGE] クラスター機能の ListClusterNodes API の
member_since
を廃止しました[CHANGE] クラスター機能の ListClusterChannels API の戻り値を変更しました
owners
を追加し、その下にリストでnode_name
epoch
epoch_latest
connected
を持つようにしましたnode_in_charge
をnode_name
に変更しましたnode_in_charge_epoch
をepoch
に変更しましたnode_in_charge_epoch_stale
をepoch_latest
に変更しましたnode_in_charge_connected
をconnected
に変更しました
Lyra コーデックへの対応¶
これは実験的機能です
[ADD]
sora.conf
に Google が公開した音声圧縮用超低ビットレートコーデック Lyra を有効にする設定 lyra を追加しましたデフォルトは
false
ですlyra = true
のように設定してください
[ADD] シグナリング接続時の音声コーデックタイプに Lyra を指定できるようになりました
指定する際は大文字の
LYRA
で指定する必要がありますLyra を利用する際は lyra_params を指定する必要があります
lyra_params
には lyra のバージョンを指定するversion
とビットレートを指定するbit_rate
が指定できます{"audio": "codec_type": "LYRA", "lyra_params": {"version": "1.3.0", "bit_rate": 9200}}
[ADD] 認証成功時に
{"audio": true, "audio_codec_type": "LYRA", "audio_lyra_params": {"version": "1.3.0", "bitrate": 9200}
のように指定できるようになりましたこの指定を利用する場合は legacy_webhook_audio_video_json_structure を
false
にする必要があります
音声ストリーミング機能¶
これは実験的機能です
[ADD]
sora.conf
に音声ストリーミングのリクエスト先の URL を指定する audio_streaming_url を追加しました[ADD]
sora.conf
に音声ストリーミングで利用するデフォルトのランゲージコードを指定する default_audio_streaming_language_code を追加しました[ADD]
sora.conf
に音声ストリーミングでデフォルトで結果をプッシュ通知で行うかどうかを指定する default_audio_streaming_result_push を追加しました[ADD]
sora.conf
に音声ストリーミングで mTLS を利用する秘密鍵を指定する audio_streaming_tls_privkey_file を追加しました[ADD]
sora.conf
に音声ストリーミングで mTLS を利用する証明書を指定する audio_streaming_tls_fullchain_file を追加しました[ADD]
sora.conf
に音声ストリーミングで利用する CA ルート証明書を指定する audio_streaming_tls_verify_cacert_file を追加しました[ADD] 音声ストリーミングを開始する StartAudioStreaming API を追加しました
[ADD] 音声ストリーミングを終了する StopAudioStreaming API を追加しました
[ADD] 音声ストリーミングの解析結果を購読する SubscribeAudioStreamingResultPush API を追加しました
[ADD] 音声ストリーミングの解析結果を購読解除する UnsubscribeAudioStreamingResultPush API を追加しました
詳細は 音声ストリーミング機能 をご確認ください。
音声冗長化機能¶
[CHANGE]
sora.conf
のaudio_red
のデフォルト値をfalse
に変更しました
センシティブデータ¶
[ADD]
sora.conf
にセンシティブなデータが含まれる可能性がある項目を"REDACTED"
という文字列への書き換えをスキップする skip_redact_sensitive_data を追加しましたデフォルトでは
false
です
[CHANGE]
sora.conf
のredact_archive_metadata_sensitive_data
を廃止しました録画メタデータファイルの
event_metadata
はセンシティブなデータの書き換え対象外としました
[CHANGE]
sora.conf
のredact_api_sensitive_data
を廃止しましたAPI の
event_metadata
はセンシティブなデータの書き換え対象外としました
詳細は センシティブデータ をご確認ください。
ウェブフックの audio と video 項目の JSON 構造のフラット化¶
[ADD]
sora.conf
にウェブフックの audio と video 項目のレガシーな JSON 構造する legacy_webhook_audio_video_json_structure を追加しましたデフォルトでは
true
ですこれは移行用設定です
詳細は ウェブフックの audio と video 項目の JSON 構造のフラット化 をご確認ください
セッションウェブフックログを req/res 形式に変更¶
[CHANGE]
session_webhook.jsonl
の出力形式を req/res 形式に変更しました[CHANGE]
session_webhook_error.jsonl
の出力形式を req 形式に変更しました
録画とアーカイブ開始ウェブフックを追加¶
[ADD] 録画開始ウェブフック recording.started を追加しました
[ADD] アーカイブ開始ウェブフック archive.started を追加しました
[ADD]
sora.conf
に ignore_recording_started_webhook を追加しましたデフォルトでは
false
です
[ADD]
sora.conf
に ignore_archive_started_webhook を追加しましたデフォルトでは
false
です
ウェブフック mTLS / CA 証明書指定対応¶
[ADD]
sora.conf
にウェブフックのリクエスト先との通信で mTLS を利用する際の証明書を指定する webhook_tls_fullchain_file を追加しました[ADD]
sora.conf
にウェブフックのリクエスト先との通信で mTLS を理世する際の秘密鍵を指定する webhook_tls_privkey_file を追加しました[ADD]
sora.conf
にウェブフックのリクエスト先の証明書をベリファイするルート CA を指定する webhook_tls_verify_cacert_file を追加しました
ウェブフック統計情報¶
[ADD] ウェブフック関連の統計情報を GetStatsReport API に追加しました
total_auth_webhook_allowed
認証ウェブフックで許可された数
total_auth_webhook_denied
認証ウェブフックで拒否された数
total_successful_auth_webhook
認証ウェブフックが成功した数
total_failed_auth_webhook
認証ウェブフックが失敗した数
total_successful_session_webhook
セッションウェブフックが成功した数
total_failed_session_webhook
セッションウェブフックが失敗した数
total_successful_event_webhook
イベントウェブフックが成功した数
total_failed_event_webhook
イベントウェブフックが失敗した数
クラッシュログ出力 API¶
これは実験的機能です
[ADD] 意図的に crash.log を出力させる GenerateCrashLog API を追加しました
この API はログ出力の動作確認にのみ利用してください
この API はかならずステータスコード 500 を返します
2022.1.3¶
- リリース:
2022-11-02
変更履歴¶
[FIX] 依存している OpenSSL を 3.0.7 にアップデートしました
[FIX] データチャネルの性能ボトルネックを修正しました
[FIX] データチャネル利用時に高負荷になった状態が継続する問題を修正しました
[FIX] データチャネル利用時に意図しないメッセージを受信した際の問題を修正しました
[FIX] データチャネル利用時に意図しないエラーが発生する問題を修正しました
[FIX] データチャネル利用時に
compress
がtrue
になっている Label のメッセージが壊れている場合の問題を修正しました
2022.1.1¶
- リリース:
2022-07-12
変更履歴¶
[FIX] 依存している OpenSSL を 3.0.5 にアップデートしました
[FIX] 録画機能の
{"type": "split-archive-end"}
ウェブフックには解像度を含めないように修正しました[FIX] 録画機能の
split-archive-end-<connection_id>.json
ファイルには解像度を含めないように修正しました[FIX]
sora.log
にでるべきログの一部がinternal.log
に出力されていた問題を修正しました[FIX] クラスターのノードが異常な状態になったタイミングで
emergency
ログを出力して終了するように修正しました[FIX] sora.conf の
default_multistream
が true の時に、"type": "connect"
メッセージのrole
にsendrecv
を指定し、かつmultistream
を指定しない
場合に、エラーとなり接続できない問題を修正しました
2022.1.0¶
- リリース:
2022-06-29
ハイライト¶
Ubuntu 22.04 に対応しました
RHEL 9 に対応しました
サイマルキャスト機能が正式版になりました
スポットライト機能が正式版になりました
スポットライト機能がサイマルキャスト無効でも利用できるようになりました
サイマルキャスト機能やスポットライト機能利用時に、視聴されていないストリームは復号処理を行わない仕組みを追加しました
録画機能で、録画ファイル分割出力機能を有効にした場合にも recording.report ウェブフック通知とレポートファイルが作成されるようになりました
クラスター利用時に、同一ライセンスを利用できる「最大ノード数ライセンス」の提供を開始しました
クラスター機能で録画状態を共有する機能を追加しました
クラスター機能でクラスター参加を自動で行う仕組みを追加しました
クラスター機能でネットワーク障害発生時に自動で復旧を試みる仕組みを追加しました
特定の接続からのストリームを受信しないようにできる
bundle_id
を追加しましたセンシティブなデータが含まれる可能性がある
session_metadata
やevent_metadata
の値を"REDACTED"
という文字列に書き換える仕組みを追加しました
廃止情報¶
sora.conf
のdemo
を廃止しましたsora.conf
のremote_stats
を廃止しましたsora.conf
のunuse_metadata_list
を廃止しましたsora.conf
のuse_re_offer
を廃止しましたGetAllRemoteStats API を廃止しました
GetChannelRemoteStats API を廃止しました
GetConnectionRemoteStats API を廃止しました
StopRecording API の
redirect
を廃止しました
互換なしの変更情報¶
マルチストリームをデフォルトで有効にしました
sora.conf
のdefault_multistream
をfalse
にすることでマルチストリームがデフォルトではなくなりますこの設定は 2023 年 6 月リリースの Sora にて廃止されます
詳細は sora.conf の default_multistream の廃止 をご確認ください
type: archive.end
をtype: split-archive.end
に変更しましたsora.conf
のsplit_archive_legacy_prefix
をtrue
にすることでtype: archive.end
がそのまま利用できますこの設定は 2023 年 6 月リリースの Sora にて廃止されます
詳細は sora.conf の split_archive_legacy_prefix の廃止 をご確認ください
type: archive.split
をtype: split-archive.available
に変更しましたsora.conf
のsplit_archive_legacy_prefix
をtrue
にすることでtype: archive.split
がそのまま利用できますこの設定は 2023 年 6 月リリースの Sora にて廃止されます
詳細は sora.conf の split_archive_legacy_prefix の廃止 をご確認ください
archive-<connection-id>_<index>.webm
をsplit-archive-<connection-id>_<index>.webm
に変更しましたsora.conf
のsplit_archive_legacy_prefix
をtrue
にすることでarchive-<connection-id>_<index>.webm
がそのまま利用できますこの設定は 2023 年 6 月リリースの Sora にて廃止されます
詳細は sora.conf の split_archive_legacy_prefix の廃止 をご確認ください
archive-<connection-id>_<index>.json
をsplit-archive-<connection-id>_<index>.json
に変更しましたsora.conf
のsplit_archive_legacy_prefix
をtrue
にすることでarchive-<connection-id>_<index>.json
がそのまま利用できますこの設定は 2023 年 6 月リリースの Sora にて廃止されます
詳細は sora.conf の split_archive_legacy_prefix の廃止 をご確認ください
セッションウェブフックでセッションの接続数が 0 のタイミングで
multistream
とspotlight
がセッションと異なる新規接続が来た場合は既存のセッションを破棄しsession.destroyed
ウェブフックリクエストを送信した後に、新規でセッションを作成しsession.created
を送信するように変更しましたセッションウェブフックでセッションの接続数が 0 ではないタイミングで
multistream
とspotlight
がセッションと異なる新規接続が来た場合はINVALID-SIGNALING-PARAMS
エラーを返し切断するように変更しましたセッションウェブフック
session.created
とsession.destroyed
のcreated_time
とdestroyed_time
を UNIX 時間に変更しましたsora.log
とinternal.log
の時刻を RFC3339 準拠に変更しましたcluster
関連設定名を変更しましたcluster_node_name
をnode_name
へ変更しましたcluster_api_url
をexternal_api_url
へ変更しましたcluster_signaling_url
をexternal_signaling_url
へ変更しましたsora_version
をversion
に変更しました
cluster
関連 API の引数や戻り値を変更しましたクラスター機能を有効にしたときのモードを
initial
へ変更しましたクラスターに参加したときに自動でモードが
initial
からnormal
へ切り替わるよう変更しました
変更履歴¶
[CHANGE] セッションウェブフック
session.created
のcreated_time
を UNIX 時間に変更しました[CHANGE] セッションウェブフック
session.destroyed
のcreated_time
を UNIX 時間に変更しました[CHANGE] セッションウェブフック
session.destroyed
のdestroyed_time
を UNIX 時間に変更しました[UPDATE] 組み込みの開発ツールを
2022.1.0
にアップデートしました[ADD] RHEL 9 x86_64 に対応しました
[ADD] Ubuntu 22.04 x86_64 に対応しました
[ADD] イベントウェブフック
connection.created
に RFC3339 形式で出力するcreated_timestamp
を追加しました[ADD] イベントウェブフック
connection.updated
に RFC3339 形式で出力するcreated_timestamp
を追加しました[ADD] イベントウェブフック
connection.destroyed
に RFC3339 形式で出力するcreated_timestamp
を追加しました[ADD] イベントウェブフック
connection.destroyed
に RFC3339 形式で出力するdestroyed_timestamp
を追加しました[ADD] イベントウェブフック
connection.destroyed
に UNIX 時間で出力するdestroyed_time
を追加しました[ADD] GetStatsReport API に Sora のバージョンを取得できる
version
を追加しました[ADD] 認証成功時の H.265 の払い出しを追加しました
[ADD] 認証ウェブフックに
simulcast_rid
を追加しました[ADD] Sora 内部で利用するファイルを書き出す
data
ディレクトリを追加しました[ADD]
sora.conf
に Sora 内部で利用するファイルを書き出すdata
ディレクトリを指定するdata_dir
を追加しました[FIX] Opus の RED の仕様変更ともない動作しなくなっていた問題を修正しました
[FIX] 0 番ポートでパケットが送られてきた場合の問題を修正しました
[FIX] DTLS で異常なパケットが送られてきた場合でも可能な限り丁寧に終了処理を行うように修正しました
[FIX] 異常な STUN パケットが送られてきた場合の問題を修正しました
[FIX] 録画した WebM ファイルの
Cluster Timecode
が負の値になると発生する問題を修正しました
マルチストリームをデフォルトで有効化¶
マルチストリームをデフォルトで有効にしました。
いままでマルチストリームを利用する場合は、シグナリング接続時に "multistream": true
を指定して有効にする必要がありました。これをデフォルトで有効に変更しました。
今後は、マルチストリームを利用しない場合は明示的に "multistream": false
を指定する必要があります。
[CHANGE] マルチストリームをデフォルトで有効に変更しました
[ADD]
sora.conf
にマルチストリームのデフォルト値を指定するdefault_multistream
を追加しましたデフォルトでは
true
が設定されていますこの設定は 2023 年 6 月リリース予定の Sora にて廃止します
詳細は sora.conf の default_multistream の廃止 をご確認ください
例外的にスポットライト機能を利用するときは "multistream": true
を明示する必要があります。
bundle_id の追加¶
複数のコネクションを同じ端末から接続する際、それぞれのコネクションで同一の bundle_id
を指定すると、
同一の bundle_id
を指定した接続からの音声や映像、メッセージングを受信しなくなります。
画面共有の映像を受信したくない場合などにお使いください。
[ADD]
sora.conf
に"type": "connect"
時にbundle_id
を指定できるかどうかを設定する signaling_bundle_id を追加しましたデフォルトでは
false
が設定されています
[ADD]
sora.conf
に signaling_notify_bundle_id を追加しましたデフォルトでは
true
が設定されています
[ADD]
"type": "connect"
でbundle_id
が指定できるようになりました詳細は bundle_id の指定 をご確認ください
[ADD] 認証成功時の払い出しで
bundle_id
を指定できるようになりました詳細は bundle_id の払い出し をご確認ください
sora.log と internal.log の出力¶
[CHANGE] タイムスタンプの出力を RFC3339 準拠に変更しました
Sora 2021.2.7 まで
2022-03-07 02:54:26.847 UTC [info] [-/-/-] <0.1218.0> SORA | node_name=sora@192.0.2.1, version=2021.2.7
Sora 2022.1.0 から
2022-03-07T02:54:26.847130Z [info] [-/-/-] <0.1218.0> SORA | node_name=sora@192.0.2.1, version=2022.1.0
録画機能¶
[CHANGE] 分割録画ファイルとメタデータファイルの出力名を
archive-<connection_id>_<index>.(json|webm)
からsplit-archive-<connection_id>_<index>.(json|webm)
に変更しましたsora.conf
のsplit_archive_legacy_prefix
をtrue
にすることでarchive-<connection_id>_<index>.(json|webm)
を維持できます
[CHANGE] 録画分割時のウェブフックのタイプ
"type": "archive.split"
を"type": "split-archive.available"
に変更しました[CHANGE] 録画分割時のウェブフックのタイプ
"type": "split.end"
を"type": "split-archive.end"
に変更しました[CHANGE] 録画一時ファイルディレクトリ
archive_tmp_dir
に保存される録画一時ファイルは、録画が失敗した場合には削除されなくなりました[ADD]
report-<connection_id>.json
にnode_name
とlabel
項目を追加しました[ADD]
sora.conf
に分割録画ファイル名をarchive-<connection_id>_<index>.(json|webm)
にするsplit_archive_legacy_prefix
を追加しましたデフォルトは
false
ですこの設定は 2023 年 6 月リリース予定の Sora にて廃止します
詳細は sora.conf の split_archive_legacy_prefix の廃止 をご確認ください
[ADD] 録画の状態をクラスターで共有する仕組みを追加しました
[ADD]
split_only
にtrue
を指定した場合に、archive.end
ウェブフックと対になるsplit-archive-end-<connection_id>.json
ファイルを作成するようになりました[ADD]
split_only
にtrue
を指定した場合でもrecording.report
ウェブフックリクエストを飛ばすようになりました[ADD]
split_only
にtrue
を指定した場合でもreport-<recording_id>.json
ファイルを作成するようになりました[ADD] 録画メタデータファイルとレポートファイルに
label
とnode_name
を追加するようにしました[UPDATE] 録画で生成された WebM ファイルが Windows の
Windows標準アプリケーションの"映画&テレビ"
で正常に再生できない問題へ対応しましたSora 側の問題ではなく
Windows標準アプリケーションの"映画&テレビ"
が WebM の仕様を守っていないことによる問題です
サイマルキャストやスポットライト機能利用時の負荷削減¶
[ADD] サイマルキャストやスポットライト利用時に誰も視聴していない音声や映像ストリームの復号を行わない処理を追加しました
[ADD] 統計 API の rtp 項目に
tocal_decrypt_skipped_audio_srtp
を追加しました[ADD] 統計 API の rtp 項目に
tocal_decrypt_skipped_video_srtp
を追加しました[ADD] 統計 API の simulcast.rtp.(r0|r1|r2) 項目に
total_decrypt_skipped_srtp
を追加しました
サイマルキャスト無効でのスポットライト機能利用¶
[ADD] スポットライト機能が
"simulcast": false
でも利用できるようになりました
クラスター機能¶
[CHANGE] クラスター有効時に起動した際のモードを
initial
モードに変更しました[CHANGE] クラスターに参加したタイミングで自動で
initial
モードからnormal
モードに切り替わるように変更しました[CHANGE]
sora.conf
のcluster_node_name
をnode_name
に変更しました[CHANGE]
sora.conf
のcluster_signaling_url
をexternal_signaling_url
に変更しました[CHANGE]
sora.conf
のcluster_api_url
をexternal_api_url
に変更しました[CHANGE] クラスター有効時に sora.log / internal.log にクラスターノード名を出力するように変更しました
[CHANGE] JoinCluster API の
cluster_node_name
をcontact_node_name
に変更しました[CHANGE] ListClusterNodes API の
cluster_node_name
をnode_name
に変更しました[ADD] クラスターから特定のノードの情報を完全消去する PurgeClusterNode API を追加しました
[ADD]
sora.conf
に Sora 起動時に自動でクラスター参加を試みるcontact_node_name_list
を追加しました詳細は contact_node_name_list をご確認ください
[ADD]
sora.conf
にネットワーク障害等発生時に自動で再接続を試みるcluster_auto_reconnect
を追加しましたデフォルトは有効です
詳細は cluster_auto_reconnect をご確認ください
[ADD] ネットワーク障害等発生時に自動で復旧を試みる仕組みを追加しました
最大ノード数対応ライセンス¶
クラスター利用時に、複数のノードに同一のライセンスが利用できる最大ノードライセンスの提供を開始しました。
詳細は 最大ノード数ライセンス をご確認ください。
[CHANGE] 最大ノード数ライセンスに対応していないライセンスを複数のノードに適用し、クラスターを構築しようとすると
DUPLICATE-LICENSE
が出力されるように変更されました無制限ライセンスをご利用のお客様でクラスターを利用されている場合はサポートまでご連絡ください
[ADD] クラスター利用時に同一のライセンスを利用できる最大ノード数ライセンスに対応しました
新規でライセンスを発行し直す必要がありますのでサポートまでご連絡ください
新しくライセンスに
max_nodes
という項目を追加し、この最大ノード数までは複数の Sora で同一のライセンスを利用できるようになります
統計機能¶
[ADD] 統計 API の rtp 項目に
total_received_srtp_invalid
を追加しました[ADD] 統計 API の turn 項目に
total_received_unknown_packet
を追加しました[ADD] 統計 API の turn 項目に
total_received_stun_unknown
を追加しました[ADD] 統計 API の turn 項目に
total_received_stun_invalid
を追加しました[ADD] 統計 API の turn 項目に
total_received_turn_invalid_stun
を追加しました[ADD] データチャネルの破棄やリトライの回数をラベルごとに取得できるようになりました
データチャネルの破棄メッセージ数
total_data_channel_abandon_message
を追加しましたデータチャネルの再送メッセージ数
total_data_channel_retransmit_message
を追加しましたデータチャネルの
DATA_CHANNEL_OPEN
メッセージ数total_data_channel_ack_message
を追加しましたデータチャネルの
DATA_CHANNEL_ACK
メッセージ数total_data_channel_open_message
を追加しました
[UPDATE]
total_sent_data_channel_message
からDATA_CHANNEL_OPEN
メッセージを除外しました[UPDATE]
total_received_data_channel_message
からDATA_CHANNEL_ACK
メッセージを除外しました
センシティブデータ編集済出力機能¶
詳細は センシティブデータ をご確認ください。
[CHANGE]
auth_webhook.log
に含まれるevent_metadata
の中身を編集済みを表す"REDACTED"
という文字列に書き換える変更を行いました[CHANGE]
session_webhook.log
に含まれるsession_metadata
とevent_metadata
の中身を編集済みを表す"REDACTED"
という文字列にに書き換える変更を行いました[CHANGE]
event_webhook.log
に含まれるevent_metadata
の中身を、編集済みを表す"REDACTED"
という文字列に書き換える変更を行いましたevent_webhook_error.log
のevent_metadata
は書き換えを行いません
[ADD]
sora.conf
にAPI 戻り値に含まれるセンシティブな可能性があるデータを、編集済みを表す"REDACTED"
という文字列に書き換えるredact_api_sensitive_data
を追加しましたデフォルトでは
true
event_metadata
の中身を"REDACTED"
という文字列に書き換えます
[ADD]
sora.conf
に録画メタデータファイルに含まれるセンシティブな可能性があるデータを"REDACTED"
という文字列に書き換えるredact_archive_metadata_sensitive_data
を追加しましたデフォルトでは
true
event_metadata
の中身を"REDACTED"
という文字列に書き換えます