Is this possible?

I’ve been using Audacity for years, and am looking to automate a workflow. Here’s the process I’m trying to execute:

Open a file “n.wav”
Raise the gain
Duplicate the track 10x
Export as “n+1.wav”
Close project
repeat process with n+1.wav, ending up with n+2.wav and so on.

I can’t see a way to execute the looping (n, n+1, n+2) file creation in Nyquist, but may have missed it. Is there another or better way to automate this workflow? Thanks in advance for all the help!!

So then you have 11 tracks in the project?


and then you have a massively distorted track called “n+1.wav” ?


What’s the purpose of this?

If you duplicate all tracks 10x, you would actually have 1024 tracks - by default when you “select All”, Audacity keeps everything selected after duplicating, including the new tracks, so it’s a geometric progression.

I can’t really go into the purpose of what I’m doing due to IP issues.

I don’t understand what you are trying to do, so I’m not able to help. Perhaps someone else will figure out what you mean.

I outlined the steps of what I want to do……simple question: Can it be done? Just because I can’t tell you the purpose doesn’t mean the steps I outlined are invalid.

They don’t make sense to me, but maybe you could do what you want by automating the task with AutoHotKey https://www.autohotkey.com/

Except that hotkeys also don’t allow for the indexing file numbers. It doesn’t look like Nyquist will do it, either……which is too bad because from a programming standpoint it’s a dead simple procedure.

The steps of the workflow I outlined in the original post are largely accomplished with hotkeys, but doing an audio export with a distinct name isn’t and that’s where automating the process reduces error - which is the focus of what I’m looking to do.

I can’t divulge why this is my workflow, nor what it is intended to achieve, but I also think that fact shouldn’t disqualify me from getting help. Hard to have an open forum when a request for help is only met with judgement.

I thought I saw mention of python scripts being used for Audacity, but when I check the Audacity wiki on plug-ins, it doesn’t mention python as a type. Am I missing something? I’ve never created in python before, but all the commands I need seem to be available to it. Is python a scripting type or is it used by Audacity in another way?

Did you look at AutoHotKeys? It can do a lot more than just operating hot keys.


Python may be used to run “Scripting Commands”. See: Scripting - Audacity Manual
The available commands are here: Scripting Reference - Audacity Manual
It “may” be possible to do what you want by writing a Python script, but I think AutoHotKeys would be easier.

Sometimes the simpler tools are best.
I have dabbled in pure-Audacity macros, but not in any of the 3rd party mechanisms (NyQuist, AutoHotkeys etc)

I have had success in using good old DOS batch files to process large numbers of files through Audacity.
You are looking for a procedure to manipulate a significant number of tracks.

Audacity tends to work on whatever tracks are open.
If you are prepared to set up your procedure to work on one track (or on a pair, or triplet of tracks etc) using a fixed name, then the outer shell of DOS batch files can take care of the names of the candidate files for you.

I grant you that the DOS process might take longer to execute, but when using computers, your savings in time comes mainly from being able to repeat a simple task multiple times without creating any manual/manipulative errors.

The DOS batch process boils down to this:-

For each candidate file/track to be processed
    Copy it to the fixed name "myInput"
    Launch Audacity to execute a fixed Audacity macro
    {the Audacity macro edits  "myInput" to "myOutput")
    copy "myOutput" to the target file name

As an aside, I have yet to see a procedure/algorithm that can not be presented while masking its true purpose.

Your process as outlined in the first post of this topic seems to reduce to:-

    take some file
    process it
    save the results of the processing in a different file

and a DOS batch file procedure will accomplish this without knowing the details of your Audacity process.


Cheers, Chris