Version: 2017.3

AudioSettings.GetDSPBufferSize

Switch to Manual
public static void GetDSPBufferSize (out int bufferLength, out int numBuffers);

Parameters

bufferLength @param bufferLength - это длина каждого буфера в кольцевом буфере.
numBuffers @param numBuffers - это количество буферов.

Description

Получает либо устанавливает количество сэмплов (шагов дискретизации) в буфере миксера.

For mobiles (iOS devices and Android) the is also settable from the menu 'Audio Settings->Mobile DSP Buffer size'. The software mixer mixes to a ringbuffer. The size of this ringbuffer is determined here. It mixes a block of sound data every 'bufferlength' number of samples, and there are 'numbuffers' number of these blocks that make up the entire ringbuffer. Adjusting these values can lead to extremely low latency performance (smaller values), or greater stability in sound output (larger values). Warning! The 'buffersize' is generally best left alone. Making the granularity smaller will just increase CPU usage (cache misses and DSP network overhead). Making it larger affects how often you hear commands update such as volume/pitch/pan changes. Anything above 20ms will be noticable and sound parameter changes will be obvious instead of smooth. Unity chooses the most optimal size by default for best stability, depending on the output type, and if the drivers are emulated or not (for example DirectSound is emulated using waveOut on NT). It is not recommended changing this value unless you really need to. You may get worse performance than the default settings chosen by Unity. As of version 5.0 setting the DSP buffer size from scripts is no longer supported. This has to be set in the Audio section of the project settings instead.

Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961