Version: 2023.1
言語: 日本語
public static void GetDSPBufferSize (out int bufferLength, out int numBuffers);

パラメーター

bufferLength リングバッファ内の各バッファの長さ
numBuffers バッファーの数

説明

サンプル内でミキサーのバッファサイズを取得します。

モバイル( iOS と Android )では 'Audio Settings->Mobile DSP Buffer size' メニューから設定が可能です。 ソフトウェアミキサーはリングバッファをミックスします。このリングバッファのサイズはここで決定されます。サンプルのサウンドデータを 'bufferlength' ごとに区切ったブロックをミックスし、それらは全体のリングバッファを用意したブロックが 'numbuffers' あることになります。 これらの値を調整すると極端に低いレイテンシーパフォーマンス(小さな値)や、音声出力(大きな値)の安定性をもたらすことができます。 警告! 'buffersize' は最高のまま生成されます。より小さくする場合は CPU 使用率(キャッシュのミスと DSP のネットワークオーバーヘッド)を上げることになります。 ボリューム / ピッチ / パンのような変更の更新コマンドを受け付けるごとに大きな影響を及ぼします。 20ms 以上の何かは目立ち、サウンドパラメーターがスムーズの代わりに変更されるのは明らかです。 Unity はベストな安定性のためのデフォルト、出力タイプに依存、ドライバがエミュレートされているかどうか(例えば DirectSound は NT 上の waveOut を使用してエミューレートされます)などの最適なものを選択することができます。 これは時に必要がない限り値を変更することはお勧めしません。Unity によって選択されたデフォルト設定よりも悪いパフォーマンスを得てしまう可能性があります。 Unity バージョン 5.0 からは、スクリプトからの DSP バッファサイズの変更は非対応になりました。プロジェクト設定の Audio セクションから設定を行う必要があります。