Sometimes I’m tempted to write a program that reads MIDI files and attempts intelligent layout in TAB with realistic constraints about what can be tapped, etc. This is actually a difficult problem not only because the search space grows rapidly but because I’m not sure that there is a single correct answer. But to make writing such a program as easy as possible it is useful to have great notation. I thought about this problem for a while and the following is my best notation to date, by far. I’ll type a picture:
Up above is 0, pick is free.
(1|2) (3|4) (5|6) (7|8) (9|10) (11|12).
WOOD OF THE GUITAR IS HERE
One guitar string is (1|2), it has two halves.
So if I pretend everything is a rest stroke, with no loss of generality:
- USX looks like 057 (starts at 0, goes through 5, rests on 7), 760 (goes back out).
- DSX looks like 086, 670.
- Sweeping might look like 057, 79.
- Double-escape is 070, 080, etc.
- One can even express how I do 3nps: 079, 986, 670,
- one can see that I don’t have a double-escaped motion.
If anybody can think of even simpler and more powerful notation, kindly share it with me! But this notation might be “good enough” to start, I’ll contemplate that the next time I’m in the shower.