This file is indexed.

/usr/bin/synthsplit is in mma 15.12-1.

This file is owned by root:root, with mode 0o755.

The actual contents of the file can be viewed below.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
#! /usr/bin/python


# A hack of timsplit.py ... this plays each track out to a synth
# with aplaymidi. The idea is to record the works, split into tracks.


import sys, os, commands, time

bgtrack = "bg.wav"

def usage():
    print "synthsplit, (c) Bob van der Poel"
    print "Create multi-track wav file using"
    print "  MMA files and external synth."
    print
    sys.exit(0)
    
if len(sys.argv[1:]) != 1:
    print "synthsplit: requires 1 filename argument."
    usage()

mmafile = sys.argv[1]

if mmafile.endswith(".mma"):
    basename = mmafile[:-4]
else:
    basename = mmafile


# Create the background midi and wav. FIXME: have a command line option to skip

status, txt = commands.getstatusoutput("mma -0 %s -f %s.mid" % (mmafile, basename))
if status:
    print "synthplit error", status
    print txt
    sys.exit(1)

# create a wav of the base file. This should get copied to your mixer

#print "Creating background track:", basemid
#status, txt = commands.getstatusoutput("aplaymidi %s" % basemid )
#if status:
#    print "synthsplit error", status
#    print txt
#    sys.exit(1)

# Get the tracks generated in the file

status, txt = commands.getstatusoutput("mma -c %s" % mmafile)
txt = txt.split()
txt=txt[txt.index('assignments:')+1:]
tracklist=[]
for a in sorted(txt):
    try:
        int(a)
    except:
        tracklist.append(a)

print "MMA file '%s' being split to: " % mmafile,
for a in tracklist:
    print a,
print


# Do the magic. For each track call mma & create midi

for trackname in tracklist:
    cmd = "mma -0 %s -T %s -f %s-%s.mid" % (mmafile, trackname, basename, trackname) 
    print cmd
    status, txt = commands.getstatusoutput(cmd)
    if status:
        if txt.startswith("No data created"):
            print "NO DATA for '%s', skipping" % trackname
            continue
        print "synthsplit error", status
        print txt
        sys.exit(1)