############## リリースノート ############## CHANGE 後方互換性のない変更 UPDATE 後方互換性がある変更 ADD 後方互換性がある追加 FIX バグ修正 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] 転送フィルター機能を追加しました - 詳細は :ref:`forwarding-filter` をご確認ください - [ADD] scalability mode に対応しました - VP9 / AV1 のサイマルキャストに対応可能になりました - [ADD] 映像コーデックパラメータを追加しました - ``SoraMediaOption`` に ``videoVp9Params`` , ``videoAv1Params`` , ``videoH264Params`` を追加しました - 詳細は :ref:`video-codec-parameters` をご確認ください 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 プロキシの設定を追加できるようにしました - 詳細は :ref:`http-proxy` をご確認ください - [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 を明示的に指定できるようになりました - :ref:`messaging-only` ときに利用されることを想定しています - 未指定の場合は、従来通り、 SDK が role を自動的に決定しますので影響はありません - [ADD] メッセージング機能に対応しました - 詳細は :doc:`メッセージング機能 ` をご確認ください - [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 を指定できるように修正しました