Skip to content
Tool to rename files written by Waves Tracks based on Avid VENUE channel names.
HTML Go
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
actions
commands
resources
testdata
tracks
venue
.gitattributes
.gitignore
.travis.yml
LICENSE
README.md
tracks.go
tracks_test.go

README.md

tracks

Tracks is a tool to rename audio files generated by Waves Tracks Live based on channel or output names from an Avid VENUE™ (version 4.5.x or earlier) patch file.

Overview

Waves Tracks is an invaluable tool for doing a multi-track recording during a live event. Unfortunately, once the event is over, getting those files into Pro Tools or another DAW can be a pain for several reasons.

  • The file names by default have the format "Track XX-Y.wav" (XX=track number, and Y=session number), giving no indication of the original channel name.
  • Tracks are sorted alphabetically by track number then session number, making it difficult to pull out all tracks relating to just a single session.
  • The alphabetic sorting of 32 tracks looks like: 1 10 11 12 … 2 20 21 22 … 3 31 32 4 5. Dragging all the tracks sorted this way into Pro Tools requires manually resorting the tracks by hand.

This software is designed to solve the above problems.

  • Files are renamed according to their original channel names, or the Pro Tools output patch names.
  • Session numbers are placed before track numbers, which groups the sessions together.

Project detail

GoDoc Travis CI GoCover Go Report Card

The software is distributed as source code. To compile the code, the Go programming language must be installed, and the source code and relative libraries installed. See the Installation section below for the necessary steps.

💡 Waves Tracks Live is a heavily striped down version of the open source DAW software Ardour. If you are are on a budget, and need something that will do more than recording and playback, give Ardour a try.

Usage

The example below will make a new copy of all files in a new location. You will need enough space in your destination location to hold these files.

💡 In the examples below, you will frequently see the character ~ used in paths. This character is a Unix shell alias for your home directory. On macOS (or Mac OS X), this is equivalent to your 🏠 folder, e.g. /Users/kward. On Windows 10 or Windows 7, it is very similar, e.g. \Users\kward.

Saving sessions with Waves Tracks Live

Save your Tracks Live sessions as you normally would. The following screenshot shows that I have saved my session as ~/Music/Tracks Live/20170916 ICF Ladies Night.

Waves Tracks Live saved session

Exporting a patch list from VENUE

Use the VENUE Patchlist export function, or the Info export function, to write your channel information to a USB stick.

Export patch list

Avid VENUE - Patchbay - Export patch list

Export info

Avid VENUE - Options - System - Info

VENUE normally writes the patch file to the root of the USB stick with a filename like Avid VENUE Patch List Sep 10 2017, 4-51 PM.html. Feel free to copy, move, or rename that file to a location useful to you.

💡 Consider moving the file off the USB drive to the same folder as the final location of the renamed files, and give it the name of the session. E.g. ~/Music/Sessions/20170916 ICF Ladies Night.html

Perform a test run of renaming all tracks. These steps must be done from the Terminal.

💡 If you aren't at your console, you can use the standalone VENUE software (Windows only) to export the channel information as well.

Copy the session files

In this example, we will make a copy of all the files into a newly created ~/Music/Sessions/20170916 ICF Ladies Night Stems folder. Once we are sure the files are copied as we like, the original ~/Music/Tracks Live/20170916 ICF Ladies Night folder will be removed.

⚠️ The examples below assume that the tracks binary was compiled according to the Installation

💡 Why add the term Stems to the end of the new folder? This isn't required, but when a Pro Tools session is created later, the best name for it will likely be 20170916 ICF Ladies Night. If that folder already exists, Pro Tools will complain, and require a different name to be chosen. Adding Stems allows a Pro Tools folder to be created with the session name, while keeping the stems separate. It is definitely an option to create the Pro Tools session before doing these steps so that the files can be copied directly into the appropriate Pro Tools session folder.

⚠️ If you chose to rename the files in place by not providing a dest_dir flag, it is highly recommended that you make a backup of your files before running the software.

Create the new folder. (This could also be done in Finder or Windows Explorer).

$ mkdir "~/Music/Sessions/20170916 ICF Ladies Night Stems"

Do a dry run of copying the files. 📝 No files will be changed because the --dry_run flag was given.

$ tracks \
  --dry_run \
  move \
    --src_dir "~/Music/Tracks Live/20170906 ICF Ladies Night/interchange/20170916 ICF Ladies Night/audiofiles" \
    --dest_dir "~/Music/Sessions/20170906 ICF Ladies Night Stems" \
    --patch_file "~/Music/Sessions/20170906 ICF Ladies Night.html"

Check the output produced. Below is some sample output (scroll to the right).

Moving:
  "/Users/kward/Music/Tracks Live/20170906 ICF Ladies Night/interchange/20170906 ICF Ladies Night/audiofiles/Track 01-1.wav" --> "/Users/kward/Music/Sessions/20170906 ICF Ladies Night Stems/01-01 Cajon (direct out).wav"
  "/Users/kward/Music/Tracks Live/20170906 ICF Ladies Night/interchange/20170906 ICF Ladies Night/audiofiles/Track 02-1.wav" --> "/Users/kward/Music/Sessions/20170906 ICF Ladies Night Stems/01-02 Shaker (direct out).wav"
  "/Users/kward/Music/Tracks Live/20170906 ICF Ladies Night/interchange/20170906 ICF Ladies Night/audiofiles/Track 03-1.wav" --> "/Users/kward/Music/Sessions/20170906 ICF Ladies Night Stems/01-03 aRuben (direct out).wav"
  "/Users/kward/Music/Tracks Live/20170906 ICF Ladies Night/interchange/20170906 ICF Ladies Night/audiofiles/Track 04-1.wav" --> "/Users/kward/Music/Sessions/20170906 ICF Ladies Night Stems/01-04 aToby-L (direct out).wav"
...

Perform the actual copy by running the command again without the --dry_run flag (notice the trailing \ character on the --patch_file line was also removed).

$ tracks \
  move \
    --src_dir "~/Music/Tracks Live/20170906 ICF Ladies Night/interchange/20170916 ICF Ladies Night/audiofiles" \
    --dest_dir "~/Music/Sessions/20170906 ICF Ladies Night Stems" \
    --patch_file "~/Music/Sessions/20170906 ICF Ladies Night.html"

The output should be the same as above, but this time the files were actually copied.

Get info about a file

If you are curious about what type of file information a .wav file has, you can use the info command.

$ tracks info --file "01-64 Main R -23 LUFS (direct out).wav"
sample_rate: 48000 Hz, channels: 1 bits_per_sample: 24 frame_count: 307459072 duration: 1h46m45.397333333s

Checking a file for silence

There are times when Tracks has issues talking to the audio device, happening more frequently than desired between Tracks and my Avid S3L-X. Luckily, Tracks doesn't break the recording off (like Pro Tools does, which is why I don't use Pro Tools for recording via AVB), and instead records only silence.

To test for silence, use the check command. The file below unfortunately has several blocks of silence, but now I can quickly document where they are, and don't need to listen to the full 1h46m to find them all.

$ tracks check --file "01-64 Main R -23 LUFS (direct out).wav"
3m43s - 3m50s
6m50s - 6m58s
27m10s - 27m15s
27m15s - 27m23s
48m54s - 48m59s
49m0s - 49m2s
58m38s - 58m43s
58m44s - 58m52s
1h25m50s - 1h25m55s
1h25m55s - 1h25m57s
1h41m17s - 1h41m24s

Getting help

To see a full list of available flags, request --help.

$ tracks --help
NAME:
   tracks - A tool for integrating Waves Tracks and Avid Venue

USAGE:
   tracks [global options] command [command options] [arguments...]

COMMANDS:
     help, h  Shows a list of commands or help for one command

   venue:
     copy  copy tracks with new names
     link  make links with new names, without removing original files
     move  move or rename tracks

   wave:
     check  check wave files for known errors
     info   output info about wave file

GLOBAL OPTIONS:
   --dry_run, -n  do a dry run
   --help, -h     show help
   --version, -v  print the version

Installation

This section covers the installation of Go, required Go libraries, and the Tracks source code.

Download and install the latest version of Go using instructions from https://golang.org/doc/install. The Tracks tool works on all versions of Go starting at v1.6.

To test setup a Ubuntu 16.04 Linux machine, these commands were used:

$ sudo apt-get install golang
$ mkdir ~/opt/go/{bin,pkg,src}
$ cat <<EOF >~/.bashrc
# Golang
export GOPATH="${HOME}/opt/go"
export GOBIN="${GOPATH}/bin"
PATH="${PATH}:${GOBIN}"
EOF

Log out and back in to test that the new environment variables were configured properly.

Download the Tracks tool source code. This will automatically compile the code, and place a binary in the $GOBIN directory.

$ go get -v -t github.com/kward/tracks

Test the installation.

$ tracks --help

Updating

This section covers updating an existing installation.

To update the software, run the following command to download the latest source, and compile a new binary.

$ go get -v -t -u github.com/kward/tracks

Tested software and systems

  • macOS (10.12 Sierra, 10.13 High Sierra)
  • Waves Tracks Live 1.3
  • Avid D-Show (3.1.1)
  • Avid Profile (unknown version)
  • Avid S3L-X (4.5.3.3)
  • Avid VENUE Standalone (4.5.3)
  • Avid Pro Tools (12.x)

⚠️ This software is neither endorsed nor supported by either Waves or Avid.

You can’t perform that action at this time.