リリースノート¶
- CHANGE
後方互換性のない変更
- UPDATE
後方互換性がある変更
- ADD
後方互換性がある追加
- FIX
バグ修正
2024.3.0, 2024.3.1¶
- 日時:
2024-08-30
- 対応 Sora:
2024.1.0 以降
- 対応 Android:
5.0 以降
- 対応 libwebrtc:
m127.6533.1.1
[UPDATE] libwebrtc を m127.6533.1.1 にアップデートしました
[UPDATE] Android Gradle Plugin (AGP) を 8.5.0 にアップデートしました
[UPDATE] Gradle を 8.7 にアップデートしました
[UPDATE] Kotlin のバージョンを 1.9.25 にアップデートしました
[UPDATE] 依存ライブラリーのバージョンをアップデートしました
com.google.code.gson:gson を 2.11.0 にアップデートしました
com.squareup.okhttp3:okhttp を 4.12.0 にアップデートしました
org.jetbrains.kotlinx:kotlinx-coroutines-android を 1.8.1 にアップデートしました
androidx.test:core を 1.6.1 にアップデートしました
org.robolectric:robolectric を 4.13 にアップデートしました
[FIX] Offer メッセージの encodings 内 maxFramerate の値が整数でない値であった場合にエラーとなる問題を修正
Offer メッセージでは W3C の定義に合わせて maxFramerate を Double で定義していますが、 libwebrtc では Integer で定義されているため、 Offer メッセージに設定された maxFramerate を int にキャストして設定するように修正しました
[FIX] Offer メッセージでサイマルキャスト有効を指定した場合にサイマルキャストが有効にならない問題を修正しました
2024.2.0¶
- 日時:
2024-04-23
- 対応 Sora:
2023.2.0 以降
- 対応 Android:
5.0 以降
- 対応 libwebrtc:
m122.6261.1.0
[UPDATE] libwebrtc を m122.6261.1.0 にアップデートしました
libwebrtc の AV1 デコード機能の脆弱性対応が含まれています
2024.1.0, 2024.1.1¶
- 日時:
2024-03-19
- 対応 Sora:
2023.2.0 以降
- 対応 Android:
5.0 以降
- 対応 libwebrtc:
m121.6167.4.0
[CHANGE]
NotificationMessage
のmatadata_list
を削除しました2022.1.0 の Sora で metadata_list が廃止されたためあわせて廃止します
matadata_list
はdata
に名称が変更されています
[CHANGE]
NotificationMessage
のchannel_id
を削除しました未使用項目であり、値が設定されない項目のため削除しました
[UPDATE] 転送フィルターの項目追加に対応しました
version
が指定できるようになりましたmetadata
が指定できるようになりました
[UPDATE] 解像度に
qHD
(960x540, 540x960) を追加しました[UPDATE] システム条件を更新しました
Android Studio 2023.2.1 以降
WebRTC SFU Sora 2023.2.0 以降
[UPDATE] libwebrtc を m121.6167.4.0 にアップデートしました
[ADD] 映像コーデックに
H265
を追加しました[FIX] connect メッセージに設定するバージョンの取得方法を変更しました
開発中のブランチでの出力値が意図せぬ結果になるため修正しました
リリースされた Sora Android SDK を利用している場合、この問題は発生しません
[FIX]
ForwardingFilter
のaction
を未指定にできるようにしました[FIX]
NotificationMessage
に項目を追加しましたsession_id
kind
destination_connection_id
source_connection_id
recv_connection_id
send_connection_id
stream_id
2023.2.0¶
- 日時:
2023-08-29
- 対応 Sora:
2023.1.0 以降
- 対応 Android:
5.0 以降
- 対応 libwebrtc:
m115.5790.8.0
[UPDATE] システム条件を更新しました
Android Studio 2022.2.1 以降
WebRTC SFU Sora 2023.1.0 以降
[UPDATE] libwebrtc を 115.5790.8.0 にアップデートしました
[ADD] 転送フィルター機能を追加しました
詳細は 転送フィルター機能 をご確認ください
[ADD] scalability mode に対応しました
VP9 / AV1 のサイマルキャストに対応可能になりました
[ADD] 映像コーデックパラメータを追加しました
SoraMediaOption
にvideoVp9Params
,videoAv1Params
,videoH264Params
を追加しました詳細は 映像コーデックパラメーターの設定 をご確認ください
2023.1.0¶
- 日時:
2023-04-05
- 対応 Sora:
2022.2.0 以降
- 対応 Android:
5.0 以降
- 対応 libwebrtc:
m112.5615.1.0
[CHANGE] type: offer の mid を必須とする修正をしました
この修正の結果、 type: offer に mid が含まれない場合は、エラーになります
最新の Sora をご利用であれば問題は発生しません
[UPDATE] システム条件を更新しました
Android Studio 2021.3.1 以降
WebRTC SFU Sora 2022.2.2 以降
[UPDATE] Gradle を 7.6.1 にアップデートしました
[UPDATE] 依存ライブラリーのバージョンをアップデートしました
org.jetbrains.dokka:dokka-gradle-plugin を 1.8.10 にアップデートしました
com.android.tools.build:gradle を 7.4.2 にアップデートしました
com.github.ben-manes:gradle-versions-plugin を 0.46.0 にアップデートしました
org.jlleitschuh.gradle:ktlint-gradle を 11.3.1 にアップデートしました
com.google.code.gson:gson を 2.10.1 にアップデートしました
androidx.test:core を 1.5.0 にアップデートしました
org.robolectric:robolectric: を 4.9.2 にアップデートしました
[UPDATE] libwebrtc を 112.5615.1.0 にアップデートしました
[UPDATE] 映像コーデックに
AV1
を追加しました[ADD]
SoraMediaOption
にaudioStreamingLanguageCode
を追加しました[FIX] テストコード内に廃止された role が残っていたため修正しました
[FIX]
PeerConnection.ContinualGatheringPolicy.GATHER_CONTINUALLY
の設定を行なっていましたが Sora がネットワーク変更に対応しておらず不要な設定であるため削除しました
2022.4.0¶
- 日時:
2022-09-16
- 対応 Sora:
2022.1.1 以降
- 対応 Android:
5.0 以降
- 対応 libwebrtc:
m105.5195.0.0
[CHANGE] type: offer の mid を必須とする修正をしました
この修正の結果、 type: offer に mid が含まれない場合は、エラーになります
最新の Sora をご利用であれば問題は発生しません
[UPDATE] libwebrtc を 105.5195.0.0 にアップデートしました
[UPDATE] compileSdkVersion を 32 にアップデートしました
[UPDATE] targetSdkVersion を 32 にアップデートしました
[UPDATE] Kotlin のバージョンを 1.7.10 にアップデートしました
[UPDATE] Gradle を 7.5.1 にアップデートしました
[UPDATE] 依存ライブラリーのバージョンをアップデートしました
com.android.tools.build:gradle を 7.2.2 にアップデートしました
org.jetbrains.kotlin:kotlin-gradle-plugin を 1.7.10 にアップデートしました
org.ajoberstar.grgit:grgit-gradle を 5.0.0 にアップデートしました
org.jetbrains.dokka:dokka-gradle-plugin を 1.7.10 にアップデートしました
com.github.ben-manes:gradle-versions-plugin を 0.42.0 にアップデートしました
org.jlleitschuh.gradle:ktlint-gradle を 10.3.0 にアップデートしました
com.pinterest:ktlint を 0.45.2 にアップデートしました
com.google.code.gson:gson を 2.9.1 にアップデートしました
com.squareup.okhttp3:okhttp を 4.10.0 にアップデートしました
org.jetbrains.kotlinx:kotlinx-coroutines-android を 1.6.4 にアップデートしました
org.robolectric:robolectric を 4.8.1 にアップデートしました
[FIX] mid を nullable に変更しました
develop で開発中に発生した不具合であり、リリース済みの Android SDK でこの問題は発生しません
「type: offer の mid を必須にする」の対応で role が recvonly の時にエラーとなる不具合の修正です
[FIX] offer で受信した encodings が反映されない不具合を修正しました
develop で開発中に発生した不具合であり、リリース済みの Android SDK でこの問題は発生しません
[FIX] EGLContext が取れなかった場合、DefaultVideoDecoderFactory, SoraDefaultVideoEncoderFactory を使用するよう修正しました
EGLContext が取れなかった場合の Decoder を SoftwareVideoDecoderFactory から DefaultVideoDecoderFactory に変更しました
EGLContext が取れなかった場合の Encoder を SoftwareVideoEncoderFactory から SoraDefaultVideoEncoderFactory に変更しました
EGLContext は null でも Hardware を使用する MediaCodec は動作するため Hardware も動作可能な DefaultVideoDecoderFactory, SoraDefaultVideoEncoderFactory に変更する対応です
2022.3.0¶
- 日時:
2022-06-29
- 対応 Sora:
2022.1.0 以降
- 対応 Android:
5.0 以降
- 対応 libwebrtc:
m103.5060.4.0
[CHANGE]
SoraMediaOption
にhardwareVideoEncoderResolutionAdjustment
を追加しましたHW エンコーダーに入力されるフレームの解像度が指定されたピクセル数の倍数になるように調整します。デフォルト値は 16 です。このオプションを実装した経緯は解像度が 16 の倍数でない場合、 HW エンコーダーの初期化がエラーになる変更が libwebrtc のメインストリームに入ったことによります。
Sora Android SDK では libwebrtc にパッチを当て、上記の HW エンコーダー初期化時の解像度のチェックを無効化しています。そのため、このフラグを
SoraVideoOption.ResolutionAdjustment.NONE
に設定することで、従来通り、解像度を調整することなく HW エンコーダーを利用できます。加えて、解像度調整ありでエンコーダーの初期化またはエンコード処理に失敗した際に、解像度調整なしで操作をリトライする処理を追加しています。
Android OS 11 の Xperia 5 II で VGA のサイマルキャストを H.264 で送信しようとした際、解像度調整ありの場合は HW エンコーダーの初期化が失敗するが、解像度調整なしの場合は成功する現象を確認したためです。
[UPDATE]
SoraMediaOption.enableSpotlight()
の引数にenableSimulcast
を追加し、サイマルキャスト無効の状態でスポットライト機能を利用できるようにしました[UPDATE] libwebrtc を 103.5060.4.0 にアップデートしました
[UPDATE] 依存ライブラリー org.jetbrains.kotlinx:kotlinx-coroutines-android:1.3.9 を追加しました
[UPDATE] システム条件を Android Studio 2021.2.1 にアップデートしました
[ADD]
SoraMediaChannel
にproxy
を追加し、接続時に HTTP プロキシの設定を追加できるようにしました詳細は HTTP プロキシ・サーバーの設定 をご確認ください
[ADD]
SoraMediaChannel
にbundleId
を追加しました
2022.2.0¶
- 日時:
2022-04-04
- 対応 Sora:
2021.2.1 以降
- 対応 Android:
5.0 以降
- 対応 libwebrtc:
m96.4664.2.1
[CHANGE] Sora で廃止となった以下のフィールドを削除しました
NotificationMessage.numberOfUpstreamConnections
NotificationMessage.numberOfDownstreamConnections
ChannelAttendeesCount.numberOfUpstreams
ChannelAttendeesCount.numberOfDownstreams
[UPDATE]
SoraMediaChannel
にcontactSignalingEndpoint
を追加しました最初に type: connect を送信したエンドポイントが設定されます
[UPDATE]
SoraMediaOption
にrole
を追加しましたtype: connect の role を明示的に指定できるようになりました
DataChannel を利用したメッセージングのみで接続する ときに利用されることを想定しています
未指定の場合は、従来通り、 SDK が role を自動的に決定しますので影響はありません
[ADD] メッセージング機能に対応しました
詳細は メッセージング機能 をご確認ください
[FIX]
SoraMediaChannel.Listener
にonOfferMessage
を追加しましたtype: offer に含まれる metadata などにアクセスできるよう修正しました
2022.1.0¶
- 日時:
2022-01-12
- 対応 Sora:
2021.2.0 以降
- 対応 Android:
5.0 以降
- 対応 libwebrtc:
m96.4664.2.1
[CHANGE] スポットライトレガシー機能を廃止しました
[UPDATE] libwebrtc を 96.4664.2.1 アップデートしました
[UPDATE] dokka を 1.5.31 にアップデートしました
[ADD] 複数シグナリング URL が指定できるようになりました
[ADD] redirect メッセージに対応しました
[ADD] type: disconnect に reason を追加しました
Sora クライアント要求仕様 に紐づく修正です
[FIX] 視聴のみかつ H.264 した場合に接続できない問題についてのワークアラウンドを削除しました
SoraMediaOption.videoUpstreamContext が無く SoraMediaOption.videoDownstreamContext がある場合はコーデック指定に依らず、 DefaultVideoEncoderFactory を使用するように変更しています
[FIX] libwebrtc のアップデート後に発生するようになったサイマルキャストのクラッシュを修正しました
SimulcastVideoEncoderFactoryWrapper.kt の Fallback クラスが原因で java.lang.UnsupportedOperationException が発生していました
調査の結果、 Fallback クラスを削除できることがわかったため、その方向で修正をしました
libwebrtc に適用している Android のサイマルキャスト対応のパッチを更新し、 SimulcastVideoEncoderFactory の fallback に null を指定できるように修正しました