Macro - Process Files Overwrite / Multiple folders

I needed to apply a macro to multiple MP3 files. Currently resultant output is all sent to a Macro Output file. It would be useful to have the option to simply overwrite the existing files rather than creating new files.

Another useful addition would be to allow scanning for MP3 files that are in folders within folders. This could greatly improve the batch processing of numerous files.

I agree that it could save a couple of seconds in some situations, but it would also be potentially very risky - any mistake and the source files are permanently overwritten. Personally I don’t think that the small convenience improvement is worth the significant risk of losing work. If you really want to overwrite the source files, you can simply drag and drop from the macro-output folder to the source folder.

The word is “Recursive”. Yes, this can be useful, and is a common feature for command line tools, but in Audacity it would add a lot of complexity. If the original files are not overwritten, which for safety reasons they shouldn’t be, then it would be necessary to reconstruct the directory structure.

The chance of file name collisions is also greatly increased as you can’t see all the file names before you start the batch process.

What if the folders contain other types of files other than MP3s? Does Audacity have to try to open all files that it finds? How would Audacity report failures?

Should Audacity try to follow symlinks? If a synlink is not accessible, should the batch process stop with an error, silently skip over it, or something else?

The point that I’m leading too is that there’s no end to how far batch processing could be extended - recursively traversing directories / smart renaming to avoid file name collisions / processing files withing zip archives / flexible file type selection / safe handling of remote storage / multiple directory support / … - At some point you need to decide which features to include because they will benefit many users, and which features to leave out to avoid excessive complexity.

For users that really do need more advanced batch processing, Audacity can be scripted from an external language such as Python: Scripting - Audacity Manual If you write your own script, you can make it as complex (and risky) as you want.