To free up my laptop from the MIDI synth role I installed ‘multimidicast’ on a Raspberry Pi 3. While testing Timidity++ and searching the net for a way to select a particular instrument in the MIDI sound bank (I want an harp) I found Yoshimi:
Yoshimi is an algorithmic MIDI software synthesizer for Linux.
It looks good. It can also run without GUI and even has is own command line console so I can use my Raspberry Pi in headless mode with sound through the 3.5 mm jack.
sudo apt-get install yoshimi
yoshimi -a -b 1024 -C
And we are running:
Yay! We're up and running :-) Found 710 instruments in 23 banks Root 5. Bank set to 5 "Arpeggios" yoshimi>
After a while I found a way to select an instrument – probably not the proper way but it works:
‘list banks’ shows available banks:
list banks Banks in Root ID 5 /usr/share/yoshimi/banks ID 5 Arpeggios ID 10 Bass ID 15 Brass ID 20 Choir_and_Voice ID 25 Drums ID 30 Dual ID 35 Fantasy ID 40 Guitar ID 45 Misc ID 50 Noises ID 55 Organ ID 60 Pads ID 65 Plucked ID 70 Reed_and_Wind ID 75 Rhodes ID 80 Splited ID 85 Strings ID 90 Synth ID 95 SynthPiano ID 100 The_Mysterious_Bank ID 105 Will_Godfrey_Collection ID 110 Will_Godfrey_Companion ID 115 chip
‘list intrument 110’ shows all instruments in bank 110:
Instruments in Root ID 5, Bank ID 110 /usr/share/yoshimi/banks/Will_Godfrey_Companion ID 4 Muffled Bells (P) ID 6 Tinkle Bell (A) ID 7 Super Ethereal (A) ID 10 Metal Sweep (A) ID 11 Slow Steel (AS) ID 13 Bright Metal (A) ID 14 Metal Tines (A) ID 16 Soft Metal (A) ID 19 Warm Square Swell (A) ID 21 Bubbles (A) ... ID 84 Cathedral Pipe Organ (P) ID 87 Sub Choir (S) ID 92 Wind Pipes (S) ID 106 Harpsichord (P) ID 107 Cathedral Harp (A) ID 108 Angel Harp (AS) ID 110 Angel Piano (SP) ID 112 SciFi Piano (AS) ID 114 Space Pipes (AS) ...
So there are two harps available. Now some voodoo from documentation:
yoshimi> set bank 110 yoshimi> s p 1 on @ Part 1+ Part 1 Enable Value 1.000000 yoshimi> s pr 107 @ Part 1+ Loaded Cathedral Harp to Part 1
Not sure what “s p 1 on” does – it is short for “set part 1 ON” and it is a requirement for the next command (“set program 107”).
Now when I play something on the EV3 it sound like an harp.
Nice!
And even better: I don’t have stuck notes. At least not yet. But I did have some audio problems (the dreaded “Alsa xrun” from when I made a Ubuntu Studio DAW for my wife, aeons ago) while playing with some instruments so it is important to memorize this command:
yoshimi> st
STop everything. Panic!
To be honest, the xrun’s ocurred mostly with more eccentric instruments I was testing, with more complex sounds (including reverberation, something that I found on yoshimi topics that can cause xrun’s).
And even-even better: wife and kids said responsivity is much better, they can now play faster.
I am almost buying a USB MIDI synth 🙂
Once Yoshimi is running form the command line type ?
this will list all the commands at the current context level
something like ? part
will list all the command just at in the part context
anything with … is the next context level, and you’re down the rabbit hole 🙂
thanks