tiMidity
can extract individual tracks from a standard MIDI file to audio files, using its option -o out.wav
, and its option -Q 0,-n
to quieten all tracks but the n'th.
However, re-mixing the resulting .wav files (sox -m *.wav ...
) may not reconstitute the original (all tracks, without -Q
). This is because any track whose first note-on event comes several seconds after the overall start (i.e., starts with a rest) produces an audio file that starts exactly at the first note. Noble, but misguided.
How can a single track be extracted into an audio file, preserving any silence before the first note?
(Must I edit the MIDI file to insert, into each track, a dummy zero-volume note at the start of the music? Or add a dummy track m
with a zero-volume starting note, and then -Q 0,-n,-m
?)