変更履歴
webrtc パッケージに対する主な変更は、このファイルに記述されます。
ドキュメントのフォーマットは Keep a Changelog に基づいており、また、このプロジェクトは Semantic Versioning に準拠します。
[2.4.0-exp.8] - 2022-07-08
追加
- ビデオエンコーディングのフレームレートの調整をサポート。
- ビデオエンコード/デコード用スレッドの CPU 負荷をプロファイラウィンドウの項目に追加。
RTCRtpSender.ReplaceTrackメソッドの動作を確認するために "ReplaceTrack" サンプルを追加。
変更
RTCRtpTransceiverをインスタンス化する際の初期情報を設定するためRTCPeerConnection.AddTransceiverメソッドに引数を追加。
修正
- NVIDIA グラフィックスドライバのバージョンが古いときにクラッシュする問題を修正。
- ファイナライザが呼ばれないない状態で GC が実行される際の問題を修正。 Vulkan 利用時のビデオストリーミングのパフォーマンスを改善。
[2.4.0-exp.7] - 2022-05-20
追加
- Unity 2021.3 LTS をサポート。
- clang-format ファイルを追加。
- CMakePresets.json ファイルを追加。
- NVIDIA H.264 デコーダーをサポート。
- サンプルのメニューシーンにビデオストリーミングのコーデックと解像度のオプションを追加。
変更
- 色空間の変換処理の CPU 負荷をレンダリングスレッドからワーカースレッドに移動。
- NVIDIA Codec SDK を 11.0 にアップグレード。
修正
- Linux のネイティブプラグインの不要な依存ライブラリを削除。
削除
WebRTC.Initializeメソッドの引数のEncoderTypeを削除。- Removed
WebRTC.HardwareEncoderSupportメソッドを削除。
[2.4.0-exp.6] - 2022-02-24
修正
- 受信側で
AudioStreamTrackのインスタンス破棄の際にクラッシュする問題を修正。
[2.4.0-exp.5] - 2022-02-02
追加
- 保留中のタスクをメインスレッドから手動で実行する機能を追加
RTCDataChannelに Native コレクション (NativeArray<T>,NativeSlice<T>,NativeArray<T>.ReadOnly) を送信する API を追加RTCRtpTransceiver.Midプロパティを追加WebRTC.InitializeメソッドにenableNativeLogパラメータを追加- "E2ELatency" サンプルの追加
AudioStreamTrackクラスに引数なしコンストラクタを追加
変更
- libwebrtc を m92 に更新
- Windows 用ネイティブプラグインのビルドに使用するコンパイラを MSVC から Clang に変更
- ストリーミングオーディオの再生を
MonoBehaviourのOnAudioFilterReadメソッドを利用する方法に変更 - 送信側で
RTCRtpEncodingParametersクラスのscaleResolutionDownByプロパティを使用すると、受信側のテクスチャサイズを動的に変更するように変更 Disposeメソッド実行済のインスタンスに対しアクセスしたときに、ObjectDisposedExceptionをスローするように変更
修正
- macOS(Silicon) でビデオストリーミングの初期化時にクラッシュする問題を修正
- Windows で OpenGL Core をグラフィックス API として選択するとクラッシュする問題を修正
- ステレオオーディオを複数のピアに対して送信すると、モノラルとして受信される問題を修正
- macOS(Intel) で HWA を有効にして Full HD 以上の解像度をビデオストリーミング送信するとクラッシュする問題を修正
- Windows で HWA を有効にして Full HD 以上の解像度をビデオストリーミング送信するとクラッシュする問題を修正
削除
- iOS のビルドプロセスをシンプルにするため iOS Simulator (x86_64) のサポートを削除
[2.4.0-exp.4] - 2021-08-19
追加
- macOS(Silicon) をサポート
- オーディオレンダリングをサポート
- パッケージサンプルを "Audio" と "MultiAudioReceive" の2つを追加
RTCAudioSourceStats、VideoSourceStatsクラスを追加
変更
- "MultiplePeerConnections" サンプルにオーディオ波形グラフを追加
修正
- Windows で Vulkan API を使用して "VideoReceive" サンプルを動作させるとクラッシュする問題を修正
WebRTC.Initializeメソッドを複数回呼び出すとクラッシュする問題を修正- Unity 2021.2 でビルドエラーが発生する問題を修正
[2.4.0-exp.3] - 2021-06-08
変更
- "VideoReceive" サンプルで入力映像用としてデバイス上のキャプチャモジュールを利用可能にする
修正
- ビデオ入力の色空間の判定処理を修正
RTCRtpSender.Trackのプロパティにアクセスしたときにクラッシュする問題を修正
[2.4.0-exp.2] - 2021-05-21
修正
- Vulkan API 利用時の RenderTexture の色空間を修正
- サンプルシーンの修正 iOS フレームワークの info.plist に short version string を追加
変更
- Android でストリーミングのテクスチャサイズに制限を設ける
- NvCodec の利用可否の判定部分を修正
- ハードウェアアクセラレーションが無効なときはソフトウェアデコーダを使用する
[2.4.0-exp.1] - 2021-04-23
追加
- Android ARM64 サポート
- 開発者のサンプルシーン間の移動を簡略化するため "Menu" を追加
- "PerfectNegotiation" サンプルを追加
- Linux 上で OpenGL Core をグラフィック API に指定したときにソフトウェアエンコーダを利用可能にする
RTCPeerConnectionクラスにRestartIceメソッドを追加RTCRtpReceiverクラスにStreamsプロパティを追加
変更
- Unity 2020.3 をサポート
- libwebrtc を m89 に更新
RTCPeerConnection.CreateOfferメソッドとRTCPeerConnection.CreateAnswerメソッドの引数の型を変更
修正
RTCDataChannelインスタンスのプロパティにアクセスするとクラッシュする問題を修正- macOS でビデオストリーミングに不正なグラフィックフォーマットを使用するとクラッシュする問題を修正
[2.3.3-preview] - 2021-02-26
追加
RTCPeerConnectionクラスにOnConnectionStateChangeイベントを追加
修正
RTCPeerConnectionインスタンスを破棄してからMediaStreamTrackインスタンスにアクセスするとクラッシュする問題を修正
[2.3.2-preview] - 2021-02-12
変更
Audio.CaptureStreamメソッドがトラックのラベル名を指定できるように修正
修正
- ネイティブコードでメモリリークしている問題を修正
- インスタンスを破棄した後にプロパティにアクセスするとクラッシュするバグを修正
MediaStream.GetVideoStreamTrackメソッドとMediaStream.GetVideoStreamTrackメソッドが正しい値を返すように修正RTCRtpTransceiver.ReceiverプロパティとRTCRtpTransceiver.Senderプロパティが正しい値を返すように修正
[2.3.1-preview] - 2021-01-07
修正
RTCIceCandidate.candidateプロパティが正しい SDP フォーマットを返すように修正
[2.3.0-preview] - 2020-12-28
追加
- iOS プラットフォームをサポート
macOS に H.264 ハードウェアデコーダ (VideoToolbox) を追加
RTCRtpSenderクラスとRTCRtpReceiverクラスにGetCapabilitiesメソッドを追加RTCRtpTransceiverクラスにSetCodecPreferencesメソッドを追加- 2サンプルを追加 ("ChangeCodecs", "TrickleIce")
RTCIceCandidateクラスにプロパティを追加RTCDataChannelInitクラスにプロパティを追加
変更
RTCIceCandidateの型を構造体からクラスに変更RTCIceCandidateInitの型を構造体からクラスに変更RTCDataChannelInitの型を構造体からクラスに変更RTCPeerConnection.AddIceCandidateメソッドの引数を変更// old public void AddIceCandidate(ref RTCIceCandidate candidate); // new public bool AddIceCandidate(RTCIceCandidate candidate);RTCPeerConnection.CreateDataChannelメソッドの引数を変更// old public RTCDataChannel CreateDataChannel(string label, ref RTCDataChannelInit options); // new public RTCDataChannel CreateDataChannel(string label RTCDataChannelInit options = null);
[2.2.1-preview] - 2020-11-13
追加
- "Bandwidth" サンプルの追加
修正
- Vulkan API でのビデオストリーミングの受信処理を修正
- Vulkan API を使用したアプリケーションの終了時に発生するクラッシュバグを修正
- Vulkan API を利用してスタンドアロンビルドしたときに発生するバグを修正
- Linux で NVIDIA ドライバがインストールされていないときに発生するバグを修正
- "VideoReceive" サンプルのバグ修正
[2.2.0-preview] - 2020-10-26
追加
- ソフトウェアデコーダのサポート
- macOS 上でのハードウェアエンコーダのサポート (VideoToolbox)
- Linux と Windows 上での Vulkan API のサポート
- Linux IL2CPP のサポート
- パッケージサンプルを追加 ("MultiplePeerConnections", "MultiVideoReceive", "MungeSDP", "VideoReceive")
変更
- libwebrtc のバージョンを m85 にアップグレード
- NVIDIA Codec SDK を 9.1 にアップグレード
RTCPeerConnectionクラスのSetLocalDescriptionとSetRemoteDescriptionの2つのメソッドで、無効な引数を渡したときに例外を投げるように修正
[2.1.3-preview] - 2020-09-28
変更
RTCRtpEncodingParametersクラスに "minBitrate" パラメータを追加
[2.1.2-preview] - 2020-09-14
変更
- 社内の翻訳システムへの移行のため日本語ドキュメントを削除
[2.1.1-preview] - 2020-09-11
修正
RTCRtpSender.SetParametersAPI が正しく動作しない問題を修正- C# コードに含まれる ZWSP(幅なしスペース) を削除
[2.1.0-preview] - 2020-08-24
追加
- WebRTC の動作を確認するための統計ウィンドウを Unity エディタに追加
- WebRTC の統計情報を収集するための
RTCPeerConnection.GetStatsAPI を追加 - ビデオストリーミングの品質を調整するために
RTCRtpSender.SetParametersとRTCRtpSender.GetParametersを追加 - データチャネルを状態を確認するための
RTCDataChannel.ReadyStateを追加
修正
- ネットワークの品質が低下した後に、ビデオストリーミングの品質が悪い状態のままになる問題を修正
[2.0.5-preview] - 2020-07-30
修正
- セキュリティに関する問題を修正するため libwebrtc のバージョンを m84 にアップグレード
[2.0.4-preview] - 2020-07-10
修正
- ビデオトラックを破棄する際にクラッシュする問題を修正
[2.0.3-preview] - 2020-06-05
修正
- DirectX12 を利用しているときメモリリークする問題を修正
[2.0.2-preview] - 2020-05-14
修正
RTCDataChannelのコンストラクタの引数に、無効なパラメータを指定するとクラッシュする問題を修正- ハードウェアエンコーダーの初期化に失敗したときにクラッシュする問題を修正
- スクリプトをリコンパイルする際にエディタがフリーズする問題を修正
- ドキュメントを修正
[2.0.1-preview] - 2020-05-01
修正
- バージョン表記の問題を修正
[2.0.0-preview] - 2020-04-30
追加
- マルチカメラのサポート
- DirectX12 API のサポート
- VideoStreamTrack API の公開
- AudioStreamTrack API の公開
[1.1.2-preview] - 2020-03-19
修正
- OpenGL の表示色の問題を修正
[1.1.1-preview] - 2020-02-28
修正
- DLL 読み込み時エラーの修正
[1.1.0-preview] - 2020-02-25
追加
- IL2CPP サポート
- Linux OpenGL API でのハードウェアエンコーダのサポート
- Mac OS Metal API でのソフトウェアエンコーダのサポート
- Windows DirectX11 API でのソフトウェアエンコーダのサポート
変更
Audio.Updateメソッドをパブリックメソッドに変更
[1.0.1-preview] - 2019-09-22
修正
- ドキュメントを修正
[1.0.0-preview] - 2019-08-22
追加
- ツールチップの追加
変更
- サンプルフォルダのフォルダ名を変更
[0.2.0-preview] - 2019-07-30
変更
- NvCodec の初期化に失敗したときにログを出力するように修正
[0.1.0-preview] - 2019-07-02
- リリース