Question: simultaneous MIDI file / audio file playback?


#1

Hello! I’m writing because I’ve been searching high and low for the right way to approach a project, and Pisound seems like it might be capable!

Basically: I have an Arduino patch that accepts MIDI and runs a live light show. This is convenient for our band because I can hit play in a Logic session, the drummer plays to a click, and magically we have a DIY light show perfectly in sync with our set!

The drawback is that I need a laptop on stage. Aside from the beer spills, I just don’t love playing a set with a laptop near me.

Before I purchase a Pisound (which I probably will anyway, cuz this thing seems amazing), do you suppose there’s a way for me to trigger the simultaneous playback of a MIDI file (to send to my Arduino light show) and an audio file (to send to my drummer’s headphones)? I suspect a PureData patch on Pisound may be the answer, but maybe there’s an even more direct solution.

Thanks in advance for any thoughts you may have!
Ben


#2

Hey, how would you like this to get triggered?

There is a button on Pisound which can execute scripts based on the number of clicks or how long the button was held down, you could just write a script that would launch aplay for playing a wave file and something like pmidi to play the MIDI file. This however doesn’t guarantee exactly the same timing, as the processes would get started in parallel with a very small delay, so you’d have to check if works well enough for you, I think it should. Some info on customizing The Button: https://blokas.io/pisound/docs/The-Button/#adding-more-button-actions

To get better synchronization, you’d have to use some approach using music software like Pure Data, or maybe you could set up Waveform to do this when receiving MIDI Start message (it has a build for Raspberry Pi).


#3

Thanks for the reply! Good question re. triggering. I suppose it would be nice to rig up some kind of small screen that could indicate which song we’re at in the playlist. I’m also thinking the one button approach might not do the trick, as I’ll need a way to move backward and forward through the set.

I have my laptop set to receive three midi signals: next song, prev song, and start/stop. Something like that would be ideal. The Waveform approach looks amazing actually, thanks for that! Wow, a Raspberry Pi build of Waveform + Pisound seems like a whole world of possibilities…