ASIO in Tenacity

Currently, Tenacity does not officially support ASIO directly. There is also no way to build Tenacity with ASIO support.

Tenacity’s ASIO support depends on PortAudio, the library Tenacity uses for recording and playback. As of 1.3, there is no way to automatically build a copy of PortAudio with ASIO enabled.

Note

There might be a way to automatically build an ASIO-enabled PortAudio via vcpkg. If you find a way to do this, please let us know.

Despite the lack of any offical build options, it is possible to replace the stock portaudio.dll with a custom ASIO-enabled one. Keep in mind that a) this is for advanced users only; b) you cannot distribute ASIO-enabled Tenacity builds; and c) this is unsupported. If you are still encouraged to build your own version of PortAudio for private use with Tenacity, you can follow these steps:

  1. Build PortAudio with ASIO support. It is assumed that you know how to set up the build environment. If not, you will need to learn how to set up a proper build environment. We will not accept support requests for building PortAudio.

  2. In an existing Tenacity installation, rename portaudio.dll to portaudio.dll.bak.

  3. Copy the custom portaudio.dll to the build folder.

Note

For step 1, it is currently recommended to build the latest git version of PortAudio if you need to record desktop audio. Once PortAudio 19.8 is released, it is recommended you use that version instead.

Also, whenever you update Tenacity, the installer will overwrite your custom portaudio.dll. You will need to repeat steps 2 and 3 again in order to restore ASIO support.

Distributing Builds

Warning

ASIO is a proprietary protocol. We cannot legally distribute builds with ASIO support enabled. Requests for ASIO-enabled builds will be ignored and closed as wontfix.

You cannot distribute custom ASIO-enabled builds either. It is still illegal for the same reasons we cannot distribute such builds.