Installing ASIO in Audacity

RE: Audacity 2.1.3, downloaded “exe”, Using Win 7

Ref: http://wiki.audacityteam.org/wiki/ASIO_Audio_Interface

  1. Do I download IDE 2015 or 2017, please?

  2. Is the “Default” IDE install sufficient or what additional “Custom” mods must I include, please?

Thank you ! :confused:

You have a couple of odd things in your post. You don’t install ASIO in Audacity. You create a whole new Audacity by compiling with ASIO services.

DennisTheNewbee

Have you ever compiled a program?

You could be an old hand with years compiling computer programs and just an Audacity newbee.

Koz

Thank you for your reply, Koz.

Yes, I do understand Audacity must actually be recompiled. I’ve been a programmer/analyst in the business field (MIS) for 30+ years (now retired). BUT I’m well aware there’s always a LOT to learn when beginning “a new project”.

Oh, and I posted to the wrong area too, I think?

Any detailed guidance will be sincerely, sincerely appreciated.

Best Regards,
Denny

No problem, at least we know that you are on Windows.
I’ve moved this topic to the “Compiling Audacity” board.

I would recommend that you first build a vanilla Release version of Audacity 2.1.3.
You will need the full Audacity source code, which is available here: Releases · audacity/audacity · GitHub
Then see the instructions here: Missing features - Audacity Support
See also the README.txt file in the source root for any details that may have changed since the wiki was last updated (I don’t use Windows so I’m not sure if there are differences).

Hopefully you will then have a fully working release version of Audacity 2.1.3

When you got that working successfully, you will need to download the ASIO SDK from Steinberg (requires agreeing to terms & conditions), and see the instructions here: Missing features - Audacity Support

THANK YOU !!

Hopefully I now have a “vanilla release” of 2.1.3 created. Thanks very much for directing me to read the super important “readme.txt” file in the source root !!!

Is there a file I might upload and play (and do minor edits) just to see if my efforts were successful? I’d like to resolve most errors before I begin really using Audacity.

As suggested, I will wait to install ASIO until all is well.

Congratulations :slight_smile:

Not sure what you want. MP3 files are plentiful on the Internet, or you could try making a test recording, or generate some sound from one of the effects in the Generate menu.
Have a look at the new “Tour Guide” for some things to try: Audacity Tour Guide - Audacity Manual

I don’t actually understand this. The yellow box at the top of the Developing on Windows page is not out of date. README is mainly about compiling Audacity on Linux. There is nothing there relevant to building on Windows except a link back to Developing on Windows.

The file that matters for Windows is win\compile.txt.


Gale

Mam:

I mean no disrespect but I don’t understand your post either.

I am a newbee to Audacity and have spent a total of no more than 2.5 hours of productive time with this new system.

Thus I have had very little time to learn what documentation is available, or, where, in its various places, is located.

All I know is that I received the excellent suggestion to read and follow that readme file. As a result of following those instructions in that readme file, I have now successfully compiled Audacity and am able to successfully use the playback function.

Today, I will start to review the edit functions, and, study the conversion from MME to the ASIO driver.

And, I sincerely appreciate those who have already, in this short time, giving me a guiding hand – rather than an admonition.

I’m a male.

My point is that there is nothing in README about compiling Audacity on Windows except a link to Missing features - Audacity Support. That is by design - if something new relevant to Windows compilation came up, it would also be in win/compile.txt referred to in Developing on Windows. I do compile on Windows, so I do know.

I’m giving you a “guiding hand” too. You are very welcome to read README, but it contains nothing about compiling on Windows except the link Steve already gave you to Developing on Windows.

I’m just trying to save others who read this some time and possible confusion. Not all newbies are as astute as you are. Well done from me too on what you managed so far.


Gale

Following this with interest

i have Audacity, and use a Focusrite 2i2

I have an ASIO input and output option in Audacity.

Does this mean I am ASIO ready? Or do I need to do something else.

Interested because have real latency issues with 2i2 and Audacity.

Official releases of Audacity do not support ASIO. Due to license restriction, Audacity cannot legally be distributed with ASIO support enabled. For more information, see here: Missing features - Audacity Support

Latency should never be a problem in Audacity. If it is, then you are probably doing something wrong. Have you started a forum topic about this problem?

Yes I raised a forum thread - but I am always tinkering with latency adjustments and timeshifts and it’s tiresome when you just have to lay some tracks down for a client.

This post - is it offering a way of plugging ASIO support into Audacity?

Once latency correction has been set up correctly, there should be no need for fiddling until you change the recording device, the host setting, or the sample rate. For normal use it’s just set it once and that’s it.

If you post a link to your other topic I’ll take a look and see if I can see what the problem might be.

To enable ASIO support in Audacity you need to build Audacity from the source code. Unless you have experience building C++ applications from source code, it’s no small task.
There’s some information about building from source here: Missing features - Audacity Support
but we are currently in the middle of an upgrade which will result in different instructions for Audacity 2.3.0 (the current development code).

ASIO is NOT required by Audacity. The main reasons for building Audacity with ASIO support are (a) If you have a multi-channel sound card that requires ASIO for multi-channel recording, (b) you are using other audio software that uses ASIO and wish to use Audacity with the same audio device at the same time. If neither of those cases apply to you, then you probably don’t need ASIO.

Thanks Steve:
https://forum.audacityteam.org/t/urgent-focusrite-scarlett-2i2-latency-issues/48830/1


We resorted to time shift all the tracks in the end with Audacity :slight_smile:

I’ve replied here: URGENT - Focusrite Scarlett 2i2 "latency" issues - - #12 by steve

Previously I had a hard time building Audacity, but with the latest 2.3 code that works with the default wxWidgets it was actually very straight forward to build it with just the latest Visual Studio.

Which brings me to the following:
It should be pretty easy to build a docker image based on microsoft/windowsservercore with VS Build Tools installed which then at runtime does:

  1. Checks out wxWidgets source
  2. Checks out Audacity source
  3. Downloads ASIO SDK
  4. Builds wxWidgets
  5. Builds Audacity
  6. Zips the output and writes it to a mounted volume

A simple docker-compose up + about 1 hour wait should then be enough to get you a ready to use Audacity with ASIO support. Because nothing ASIO related is distributed inside the image but rather it’s downloaded when the user runs it this could be legally ok to do.

I have experience with building VS solutions in docker for windows containers so I can build the docker image. But I’m not 100% sure if this approach is legal. Any thoughts?

I can’t comment on the licensing/copyright aspects of this but if you wanted to do it this way for your own convenience then why not have a go. But I don’t think its reasonable to ask the Audacity development volunteers to take on another task which could be a procedural nightmare every time something changes. If you look at the fork created by Henricj you will see that he has produced a similar integrated scripted build but if you have tried it you will know that many things can go wrong and in the end breaking down the build into individual steps is a more foolproof approach because its easier to identify which step has gone wrong.
Audacity’s greatest asset is the contribution of individuals to its ongoing development, and if we are lucky enough to get a version 3.* there will be huge amounts of work in improving or replacing the partner elements such as wxwidgets and portaudio so distractions could be unhelpful.
Finally, as an ASIO user whose hardware currently dictates that I am very dependent on it for recording, I suggest that it may now have a limited life-span remaining as OS built in capability improves. So in a few years time the licensing and dependence on Steinberg may no longer be relevant.

No no of course the Audacity team shouldn’t care about it, they have work enough with the actual app.
The idea was to provide a way to get it with ASIO for users without any programming experience, because for them it’s not virtually impossible to get it.
I’ll maintain the image + a GitHub repo with a script so it should be pretty turnkey for the end users:

  1. Install docker for windows and select windows containers.
  2. Run script
  3. Eat cake

you will know that many things can go wrong and in the end breaking down the build into individual steps is a more foolproof approach

This will be ok. If the build script uses a specific commit hash of wxWidgets/Audacity that I have tested to work on the Docker image then it will work for everyone. That’s what Docker is for: the environment in which the code is built is the same on every machine in the world. The “it (does not) work on my machine” problem is in 99.999% of the cases completely gone. This is a key difference with the other script.