asio4all asio4all v2 User Manual

Page of 9
2. Hardware Buffer on/off
Enables the hardware buffer for the highlighted device. This only works for so called “WavePCI” 
miniports, as other types of WDM drivers do not usually allow direct access to the hardware buffer.
Note: For WaveRT drivers (Vista), this box is always checked!
Note: For WaveRT drivers (Vista), this box is always checked!
Adjustment for best hardware buffer performance involves the “ASIO Buffer Size” slider and the “Buffer 
Offset” slider (see below). Hardware buffering works best for rather small ASIO buffer sizes. Try 
something between 128 and 256 samples as a starter!
The biggest advantage of using the hardware buffer is that this method uses a lot less CPU. In addition, it 
may be possible to decrease latencies even further.
In multi-device-setups, it is possible to mix Hardware-buffered devices with devices that are not. This, 
however, is not particularly recommended!
If hardware buffering is not supported by a particular audio device, there will be an additional latency of a 
couple hundred milliseconds, which is clearly audible.
3. Kernel Buffers/Buffer Offset
If hardware buffering is disabled, this control lets you add up to two more buffers to be queued for audio 
output. Each additional buffer increases the output latency of the device by the time it takes to play one 
buffer. Therefore, the initial setting of “2” should only be changed on less powerful machines, where 
reasonably small ASIO buffer sizes cannot be achieved with the default setting. 
If hardware buffering is enabled, this control determines the amount of clearance (in ms) between where 
ASIO4ALL will insert data into/read data from the hardware buffer, and the position where ASIO4ALL 
currently thinks the hardware read/write position is. Sound complicated already? You haven't even seen 
the code that calculates this...
As a general rule: Higher settings increase latencies and stability, lower settings have the adverse effect.
You should, however, be able to achieve a setting that is very close to zero (“4ms” would still be 
considered “very close to zero”, while “10ms”, the default, would indicate that there is room for 
improvement.)
With Envy24-based PCI-sound cards, there may be an option in your sound card control panel that reads 
“DMA Buffer Transfer Latency” (Seen with Terratec products) or similar. You should set this to the 
lowest possible value, e.g. “1ms” for best results.
4. Always Resample 44.1<->48 kHz
ASIO4ALL can do real time resampling of 44.1 kHz audio to/from 48 kHz. Resampling will 
automatically take place whenever ASIO4ALL is opened for 44.1 kHz and the WDM driver does not 
support this sample rate.
There may, however, be instances in which case an AC97 will support 44.1 kHz by resampling internally. 
More often than not, however, AC97 resampling quality is extremely poor and/or prone to stability 
issues. To work around this, you can enable this option. With at least one incarnation of the SoundMax 
WDM driver (smwdm.sys), this option absolutely must be enabled in order to make it work at 44.1 kHz 
at all.
5. Force WDM driver to 16 Bit
This option only has an effect if the supported bit depth of the WDM driver is larger than 16, but less 
than 24. Some AC97 devices report e.g. 20 Bits resolution but cannot actually be opened for more than 
16 Bits resolution. Should this be the case on your system, this option provides a workaround. Originally, 
this was introduced as a workaround for an issue with the SigmaTel AC97 WDM driver.