ASIO4ALL - Universal ASIO Driver For WDM Audio

A4A News

Project Brief





Some common questions and answers: (Note that some of these apply to version 1.8 only, which did not come with an instruction manual!)

Q: What is this for?

A: If you don't know why you would need an ASIO driver then chances are that indeed you don't need one and came here by mere accident.

Q: Is this safe?

A: ASIO4ALL is a user mode component that is neither running nor even being loaded unless you start an ASIO host application. It does not overwrite/replace anything in your system except previous versions of itself. The worst thing that could possibly happen is that it crashes, in which case you simply uninstall and forget about it.

Q: Why does it not work with Win98 Gold?

A: Win98 Gold does not have WDM support (neither has any version of Win95, but folks haven't complained, so far.) ASIO4ALL requires a WDM driver. Sorry!

Q: Why is there no audio device available to use with ASIO4ALL in my Win98SE/WinME system?

A: Good news is that you seem to have figured out that ASIO4ALL in general works just fine under Win98SE/WinME. Bad news is that you have no WDM driver for your audio hardware. The OS you use allows for two different driver models: WDM and VxD. To use ASIO4ALL, you need a WDM driver. Since about every other inquiry I get appears to be about this subject and in 9.9998 out of ten cases in conjunction with a SB Live! card of some flavor, this needs a SB Live!-specific answer in as far as you may want to check out the kx project drivers specifically designed for use with the SB Live! series of sound cards. If the prospect of a 48kHz locked sample rate bothers you: you can always run ASIO4ALL on top of kx.

Q: I have installed ASIO4ALL but there seems to be no change in latency or anything. When I select the control panel on the desktop, the sample rate is grayed out (Version 1.x). So what?

A: Chances are you never worked with ASIO before. I wasn't thinking that this may become a FAQ but here we go: You have to set up your audio software to use ASIO in order to notice any change. How this is done depends on your particular audio software and there usually is some sort of an audio configuration dialog. The sample rate is always grayed out if the control panel is launched from the desktop, this is per design. Please use the "ASIO Control Panel" button from inside your audio application in order to adjust the driver settings instead. About every audio application has such an option and the desktop control panel is only for those few that do not. ASIO4ALL will definitely not do anything to the sound output of your games etc. Please refer to the first question in the list for that matter. If you were told somewhere that this is going to "overclock" your sound card or BS like that, this is not my fault and no, it does not "overclock" your sound card.

Q: (Version 1.x) An 80kB file is all I get. Is the download broken?

A: No at all. The ASIO4ALL driver itself has a size of a mere 24kB. The remainder is taken up by the installer. This is one of the benefits of assembly language coding: It doesn't take more than that in order to do what ASIO4ALL does!

Q: It does not work, what should I do?

A: Keep in mind that a statement like 'it does not work' only means that it does not currently work for _you_! Given the variety of audio hardware and system configurations out there, chances are indeed that ASIO4ALL may either not work on your system at all or that it may not work with certain applications while with others it does. If the prospect of getting it to work still seems tempting enough, you are asked to report your findings and include as much information as possible, including your OS, CPU, audio application that is causing problems, what exactly the problem is, your audio hardware and driver details. If you think that your audio hardware has an unusual feature and you suspect that it may have something to do with the issue, you should mention this as well. Simply put: if _you_ were asked to fix something, what information would _you_ want to be given? You are further asked to run this little debug utility on your system. It enumerates your WDM audio stuff into a plain text file 'EnumA4A.txt' which you are supposed to send back to me along with your error report. This may help me perform the forensics. In return, you will receive the privilege of being bothered with numerous test/debug versions for as long as there is hope or until your problem is fixed. Something to try on your own is to check your hardware manufacturer's Web site for driver updates and make sure you have the latest service pack installed for your OS.

Q: Will it work on my system with an XXX audio card and what kind of latency figures can I expect?

A: Don't know either. There are too many possible system configurations out there to make any kind of a useful prediction. Just try it out yourself! Judging from the overall feedback I received so far, I can make a rough guesstimate that it works out of the box for 5 in 6 people, so chances are that just maybe it works for you. Latency settings lower than 3ms may be possible in some cases but I do not recommend this. The minimum (best case) timing resolution in Win2k and XP is one millisecond. So any time calculation performed by whomever has a granularity of 1ms plus another 1ms because of rounding errors. This means that with a setting of 2ms you are pushing it really hard already and any attempt to go even lower will definitely make things become unstable!

Q: Any hints on using ASIO4ALL with USB devices?

A: After some initial troubles with earlier revisions, the driver now appears to work just fine with numerous USB devices. one thing to not do, I mean: not ever! is to check the DMA box with USB devices. If you do not need all the additional software gizmos like EAX, EQ, Fake3D-Whatever... it is recommended that you _not_ install the drivers shipped with your USB audio interface. Windows has a built-in generic USB audio driver that works with most devices. Thus, if you want to have honest, no-nonsense, low-latency audio playback/recording with your USB audio interface - by all means: stick with the Windows driver! This is especially true for consumer grade stuff, where you can be assured that the drivers shipped with it are most likely 'consumer grade' as well.

Q: No sound on SigmaTel C-Major Audio...

A: Check the 'Force 16bit Samples' box! These devices were the reason why this box was introduced to begin with.

Q: No sound on SoundMax Digital Audio...

A: Check the 'Always Resample 44.1KHz...' option!

Q: Why does it sound muddy/why do I hear crackles in intervals of like 10 seconds or so when running at 44.1kHz where at 48kHz everything is fine?

A: These are typical resampling artifacts from poorly designed WDM drivers. Since version 1.7 beta 2, there is a check box 'Always Resample @44.1k'. When checked, ASIO4ALL will take care of the resampling business on its own, even if the card driver says it can do 44.1k - Alles wird galaktisch gut!

Q: What are the true latencies vs. what is displayed in the audio control panel?

A: (Version 1.x) Different applications calculate the latencies in different ways. ASIO4ALL reports to the application the latency it adds to the audio stream, but some applications chose to ignore the return values of the ASIOgetLatencies() function and use a rather naive calculation instead. But even if done properly, these calculations can never give accurate results. In Direct DMA Buffer mode, the reported latencies at least are pretty close to reality. Still there is always one big unknown: The time the audio information needs to travel from system memory into the output jacks of your sound card. This is entirely beyond any driver control. Same applies to pro audio gear with dedicated ASIO drivers, though. The latter usually work with fixed latency values that are added to the ASIO-inherent buffer latencies. Since these fixed values depend on the actual audio hardware, there is no way that ASIO4ALL can account for these parts of the device latency.
(Version 2.x) There now is an internal guess-o-matic which attempts to auto-compensate latencies for applications like e.g. Cubase that perform automatic ASIO latency compensation. Since this guess-o-matic does not always yield correct results, you can measure the actual round trip latency for audio (using a loopback cable) and adjust the sliders in the "Latency compensation" section of the ASIO4ALL v2 control panel accordingly.

Q: Why do I get an error 'Could not start ASIO' or some such? (READ THIS ESPECIALLY IF YOU ARE HAVING PROBLEMS WITH LOGIC!)

A: (Version 1.x) ASIO4ALL requires exclusive access to the audio device. More often than not, starting the driver fails because the audio device is already in use. There are obvious instances, like some other audio application still open, but there are also things to consider that are not so obvious. Such as the "Microsoft GS Software Wavetable Synth", which is enabled as a default MIDI output in some sequencer software. Check the MIDI settings of your host application! For a further explanation on this issue, I recommend this link. Besides, this may also be related to the 44.1 vs. 48kHz issue as explained above. Try to set up a project with 48kHz and see whether this makes a difference. As a last resort, check the "Force 16 Bit Samples" option in the control panel. If it still doesn't work, report!
(Version 2.x) This error should not happen as often anymore. Instead, you simply get no audio, and, if you open the ASIO4ALL control panel, you will find that your audio outputs are flagged with an error symbol. The most likely reason and remedy for this hasn't changed, however.

Q: Is there a way to contribute to the ASIO4ALL development effort? I haven't found a "Donate" button, but I'd like to make a donation!

A: I have received quite a number of these kind offers from people. First of all, thank you for this! It gives me hope in a society where, according to some who unfortunately appear to be running the show, virtually every aspect of human interaction is dictated by the laws of marketplace economy, shareholder value and whatnot, essentially excludiung the possibility of someone willing to give away money or other valuables to a total stranger where there is no obligation at all! Anyway, even though I deeply despise some aspects of capitalism, so far I managed to do fairly well, financially. Thus, if your resources are limited, they are best spent on buying one or the other essential piece of gear to support your music. If, OTOH, there regularly is some drinking money left in your pocket at the end of the month, and you feel that more drinking is not going to improve your quality of life, you are free to donate to one of the few non-SCAM organizations that strive to improve or even save the lifes of folks who could really use a little help - as a matter of understatement. Another reason is - even though it might not actually mean that - accepting donations would give me a sense of owing to people - removing the aspect of a recreational activity from the project at least somewhat. Oh yeah: And if you are what could be referred to as "wealthy" and you absolutely feel that my name should appear in your last will, feel free to contact me at any time of the day, any day...

ASIO is a trademark of Steinberg Media Technologies GmbH. Everything else on this page, including the numbers 16, 48 and 100 is or may become a trademark of Microsoft, Corp., except for trademarks of their respective owners that are used for product identification purposes only. The rest, as well as the stuff mentioned above that has not yet become a trademark of Microsoft, Corp. is Copyright(c)2003-2021, Michael Tippach.