I've followed your tutorial (many thanks btw!) and managed to get MT-32 emulation through Munt 2.5.0 working on RetroPie v4.7.1 using a RPi4. However, I've got a little issue with switching between TiMidity and Munt.
This is what the pre-Munt device configuration looked like:
pi@retropie:~ $ aconnect -o
client 14: 'Midi Through' [type=kernel]
0 'Midi Through Port-0'
client 128: 'TiMidity' [type=user,pid=577]
0 'TiMidity port 0 '
1 'TiMidity port 1 '
2 'TiMidity port 2 '
3 'TiMidity port 3 '
And this is afterwards:
pi@retropie:~ $ aconnect -o
client 14: 'Midi Through' [type=kernel]
0 'Midi Through Port-0'
client 128: 'MT-32' [type=user,pid=645]
0 'Standard '
1 'GM Emulation '
As you can see, TiMidity is no longer listed.
How can I revert back to TiMidity, or even better use both at the same time on different ports? When I disable autostart in rc.local and reboot the system, TiMidity doesn't automatically shows up. How can I resolve this?
EDIT: I've managed to get it working by performing "sudo apt-get -y install timidity timidity-daemon". For some reason installing Munt resulted in the TiMidity daemon disappearing, but that has now been resolved.
EDIT2: Never mind, it was just a brain fart. It wasn't even configured as a daemon/service prior to installing Munt. I hadn't touched RetroPie for over almost a year and forgot that TiMidity is started/stopped though scripts used by the systems/emu's (i.e. PC).
Currently it looks like this:
pi@retropie:~ $ aconnect -o
client 14: 'Midi Through' [type=kernel]
0 'Midi Through Port-0'
client 128: 'TiMidity' [type=user,pid=538]
0 'TiMidity port 0 '
1 'TiMidity port 1 '
2 'TiMidity port 2 '
3 'TiMidity port 3 '
client 129: 'MT-32' [type=user,pid=654]
0 'Standard '
1 'GM Emulation '
For comparison sake, I've done some testing between TiMidity and FluidSynth. I must say they're pretty on par, but as a service I prefer TiMidity, as it's less resource hungry.
pi@retropie:~ $ aconnect -o
client 14: 'Midi Through' [type=kernel]
0 'Midi Through Port-0'
client 128: 'TiMidity' [type=user,pid=539]
0 'TiMidity port 0 '
1 'TiMidity port 1 '
2 'TiMidity port 2 '
3 'TiMidity port 3 '
client 129: 'MT-32' [type=user,pid=652]
0 'Standard '
1 'GM Emulation '
client 130: 'FLUID Synth (4992)' [type=user,pid=4992]
0 'Synth input port (4992:0)'