Build your own Audacity with ASIO driver support
UPDATE: This builds Audacity 3.0.2. Audacity 3.0.0 introduced a new project file format so you will hit compatability problems if you use Audacity 2.x.x to open projects saved with this version.
The Audacity program is the "go to" solution for many audio recording and editing tasks. However, unlike many more advanced DAWs, it doesn't support Windows ASIO drivers "out of the box". Fortunately, Audiacity's standard MME support is fine for most uses. That said, common reasons for needing ASIO are using digital audio or music equipment that only comes with ASIO drivers, such as Behringer mixers (which actually use the ASIO4ALL ASIO <> WDM bridging driver). Another common reason is to take advantage of the low latency or multiple channels supported by ASIO.
While it is possible to build your own Audacity with ASIO support this usually requires considerable technical skills.
To reduce this requirement, the instructions provided here make it easy to build your own version of Audacity with ASIO support on a Windows PC. The instructions for the few manual steps should be straight forward to follow, and use a command script that does all the work for you.
NB. If you do use this to build Audacity with ASIO support you must not redistribute it due to the ASIO SDK licensing terms - see below.
Unfortunately, it turns out the Audacity ASIO build has limited multi channel support. For example, the peak meters always show channels 1 & 2 and to record channels 3 & 4 requires recording 1, 2, 3 & 4. So While Audacity still works really well for simple recording tasks, you might want to eventually switch to a full DAW with AISO support. I'll probably use Reaper.
Here's a brief blog post explaining why I needed ASIO and it includes a screen shot.
I also discovered my McMillen K-Mix digital interface mixer facilities alow routing of inputs 3 & 4 to the mian outputs on 1 and 2 so can use the default MME Audacity build after all. For playback from PC, I found the HiFi Driver and ASIO Bridge from VB Audio lets me re-route PC audio out to channels 3 & 4 on the K-Mix, Leaving Channels 1 & 2 free for instruments and Mics.
The reason for Audacity's lack of ASIO support is licensing not technical. Steinberg do not alow the ASIO SDK to be redistributed (as required by open source projects) and anyway, In adition, Audacity is GPL licensed and so is incompatible with the SDK licence.
Update This video by @Renamesk walks you through the process.
- make a new folder
- click on the 'raw' button at the top of the script (below) in this Gist.
- use the browser Save As feature to save the script as
- install the following (the script prompts if you have not done so when it runs):
- "Git For Windows" - click the "download" button.
- "Cmake" - download dialog will appear
- "Visual Studio Community 2017" - download dialog will appear after a delay. Be sure to select the desktop development with C++ option or else you will later see errors
nmake is not found. Close VS GUI if it opens (no need to sign in)
- Python - download dialog will appear
- "Steinberg ASIO SDK" - select the SDK link. Right click zipfile, "expand all" to
C:\projectsand then rename the
- close all cmd or terminal windows including git for windows. Otherwise you may later see errors
- open a new Windows cmd terminal (Windows + R keys and then type
cd \projectsand enter key
- run build script by typing
- come back later - it will take at least 10 minutes (all the yellow warnings can be ignored)
- run the new version of Audacity at the location printed out at the end of the build
If you have any ASIO drivers installed you should find ASIO is now available in the the Audacity driver selection combo box.