Open multiple audio files into one track

Hi,
I have a need to open multiple audio wav files into one track.
What options are available to do this?

Could I create an adhoc xml session file pointing to the source files?

We need to do open multiple files (20+) a lot, and it would help us with our workflow if we could just start the program with the windows showing all the files concatenated, just as the user will hear the end result.

Thanks,
Graham

it would help us with our workflow

Certainly. That’s why Append - Import is a popular future Feature Request.

If you multiple Import now, I believe you get all the clips one above the other. There’s a shortcut way to align track two start with the end of track one, three with the end of two, etc, but I need to look that one up. If you do that and export the show as, for example, a WAV file, Audacity will smash them all together into one long track.

Koz

Here it is. Tracks > Align…

I don’t know how automatic you can make it, but it does save you having to manually shove each track sideways using the Time Shift Tools (two sideways black arrows).

Koz

Tracks > Align Tracks >Align End to End willline all the tracks up one after the other but still in separate tracks.

If you want them is a single track, then use Ctrl+A to select all the tracks and then use Tracks > Mix and Render

Have a look at this page in the Audacity Manual: http://manual.audacityteam.org/o/man/tracks_menu.html

WC

That is one solution if you want the work to create the file: Audacity Manual .

One good point about a LOF file is that you can force the order in which files are imported. Normally, Audacity imports files in alphabetical order of their file name.

If you want more trouble you can specify in the LOF file the offset (starting point on the Timeline) for each file, so line the files up that way.


Gale

Hi guys,
Thanks for your responses.

Yes,

“Append - Import” is a popular future Feature Request.

would be perfect, especially if I could call the feature by the lof file.

It would also be great if the lof file could also put labels at the location of every file.
I’m happy to help anyone test the “Append - Import” feature if your able to develop it.

Regards,
Graham

Not quite “perfect” because I expect writing a LOF file would be beyond the capabilities of many Audacity users. However it would offer a very useful and flexible solution for everyone else.

I’ll add grahamsc’s “vote” for a GUI Append Import feature that includes LOF file support. For most users though they will need (as Steve says) interface options for import order, offset, space between imported files, perhaps an option to import at the cursor point, and so on.


Gale

I think that extending the LOF syntax to support append import would be a good first step, so please add my vote for that.

I’m not quite clear here - if the LOF syntax allowed specifying appending of files, would the user need to use a GUI Append Import rather than simply the existing File > Open… or File > Import…? I was figuring that a GUI Append Import that supported LOF would append from a LOF file using the existing LOF syntax.


Gale

Hi Guys,
Thanks for thinking about these things. Though dialogs are very important, I don’t fully understand the nuances so unable to comment.

My specific user case would be to open Audacity and the lof file from the command line, and everything will just open. It would be nice if it makes a new track appear in audacity (possibly mono or stereo as appropriate, or always defaults to stereo and mono tracks either just go to the first track, or mono tracks appear across both tracks),concatenates all the audio one after the other as defined in he lof, and maybe even create a label track telling the user where the start of every new file exists in the timeline.

Happy to explain more. Thanks, Graham

Regardless of the LOF question, the code to append import does not yet exist, so that needs to be developed.
Extending the syntax of LOF files to make use of that new code is likely to be relatively straightforward. We then have both the code in Audacity, and the ability to use it.

Now looking from the opposite direction:

If we have a GUI approach to append import, the code to do it still needs to be written. That part is the same whether using a LOF approach or a GUI approach.
I think we agreed that we would need the ability in the GUI for the user to define not only what files to import, but also what order to import them. In terms of the code, that means creating a “list” of the files. Essentially that is what a LOF file is.

Looking in a bit more detail at the LOF format:

The LOF file is plain text and is read one line at a time. The fully qualified file name of the LOF file is used to determine relative paths.
Each line may contain 0 or more “tokens” (keywords).
Tokens are identified, their associated value calculated, then checked for validity, one at a time.
When all tokens in the line have been evaluated and checked, whatever that line said is actioned, then the next line is read.

The key to this is that the first “window” token is implicit, and all other tokens are optional. Tokens are read in order, and if the line does not make sense it is ignored. This is very convenient because if we define a new token, then as long as it goes after the other non-comment tokens it will be ignored by older versions of Audacity. It also means that tokens can easily be overridden. Thus, if we specify a track offsets in the GUI, they can override track offsets specified in the LOF. Similarly if we specify “append” in the GUI, then that can override an implicit “in new track” in the LOF, or if we specify “in new track” in the GUI it can override an explicit “append” in the LOF.

I’m perhaps not explaining very well, so putting it another way:
When designing a program, there is the code that “does something” and there is the interface that allows interaction with the code. There can be more than one interface.

Example: a synthesizer “does something” (synthesizes sound) and a keyboard can be used as an interface. Often a synthesizer can be used with a “wind controller” or a “MIDI sequencer”, or a MIDI keyboard, or any other MIDI controller.

Similarly, for append import we need the code that handles append import. Text file input is one possible interface by which the user can interact with that code. A GUI would be another type of interface through which the user could interact with said code. These interfaces are not exclusive - there’s no reason why they could not coexist.

In terms of development, extending the syntax of LOF files is considerably simpler than developing an acceptable GUI, and so imho would be a good practical first step.
Taking this idea one step further, the LOF syntax could be extended to do other things, such as normalizing each file, or removing DC offset, or cross-fading, or …

Hi:

I had been tediously using the Time Shift tool to manually line up tracks one after another.

Now thanks to this thread, I now know that tracks - align tracks- end to end saves so much time.

You learn something new every day.

mdubin

This has been introduced only fairly recently - I think it came in with 2.0.4

Peter.

It was added to the (alpha) source code Fri Aug 23rd 07:15:13 2013 UTC and the wording for the updated Align menu was added a week later, so that would make it “new in Audacity 2.0.5” (released October 22nd 2013).