A minimalist setup to play piano on a Mac with MidiPipe
MainStage and Logic are awesome but heavy
I have been trying to teach myself piano and the basics of music in my free time. Slowly. But who cares it's the end of the world right? So we have time. I have a large 88 keys keyboard with fully weighted keys (a Yamaha P-125) but most days I am in front of my computer, not the other keyboard. Sometimes I want to play a few notes, maybe for like 2 minutes, while stuff compiles, downloads or whatever with zero friction.
So I bought an Xkey Air. Let's say it upfront: it's NOT a good keyboard compared to the device above. It's clicky, has non-fullsize keys and only has 37 keys. On the other side it can travel (made sense before COVID-19...), it's thin, looks nice like an Apple device and most of all fits just right on my desk so it can stay there permanently, ready to receive fingers without prior setup and not bother me the rest of the time.
In retrospective it was a bad idea to get the Air (bluetooth) version since you can't connect a sustain pedal to it. Thankfully, I have a damaged KORG 25 keys keyboard under the desk that I use just for the sustain pedal. This means I always use two MIDI inputs at the same time.
I initially used Logic Pro or Apple's MainStage and while both are great apps for more complex tasks both are a tad overkill to sit in the background 100% of the time. When Mac comes back from sleep I can feel MainStage waking up slowly with a lot of warnings about stuff that was (dis)connected and whatnot.
Finding a lightweight replacement: MidiPipe
Strangely it was hard to find what I wanted: a minimalist app that just plays good piano sounds from two MIDI inputs. Either the apps were heavyweights or they only supported an input at once or the builtin sounds were awful. It turns out MidiPipe is a great – while not very intuitive – solution.
First get MidiPipe and install it. As of today the app is not notarized so you'll have to right click from Finder to allow it running on latest MacOS. If you have some money left after the pandemic, send some to the author who accepts donations for his great piece of free software.
Then download a good sound bank. SoundFonts4U has a lot of good stuff. I personally picked the Yamaha C5 Grand, since the sounds reminds me of my actual (smaller) Yamaha instrument and I only wanted a piano sound.
Setting up MidiPipe is rather straightforward: drag "tools" from the left to the "pipes" on the right . Drag as many "MIDI In" devices as you own, then drag the "DLS Synth". Finally simply open the sound bank you just downloaded. I also added the "AList" tool too so I can observe incoming MIDI messages because I am a nerd.
Then save your pipe somewhere on your computer and set it up to open on startup using the system's Preferences pane.
And here you are: it sounds nice, uses 0% CPU while idle (~ 10% when playing notes) and not a lot of RAM except for the Yamaha C5 soundbank but there are smaller alternatives if you are really short on memory,
Have fun !