MIDI SPP messages implementation

#1

Hello,
first of all thank you to the BeatBuddy inventors :slight_smile:
My request comes from the following scenario:
I’d like to drive a sequencer+expander module with BB midi out, mainly to have strings/piano background.
I know that BeatBuddy can send Start/Stop MIDI commands. But due to the “live” character of the BB itself I’d like to send to the sequencer an SPP (SongPositionPointer) MIDI message (http://www.blitter.com/~russtopia/MIDI/ … ec/ssp.htm) on each Verse/Chorus transition on BB pedal.
So I will not forced to repeat the song from the beginning.
If SPP messages is implemented, I could stop the BB (and sequencer) and the start the music again at the right point in BB and also on the sequencer.
Of course the information about Verse/Chorus Position should be added/modified by the BeatBuddyManager interface.
Thank you

#2

TLDR: BeatBuddy gives you a complete freedom in the order in which song parts are played. You can loop Main Part 1 two times (or three). Thus it’s just impractical to even try defining a sensible “position” inside a song.

What implementation do you seek specifically? So that BeatBuddy could send or receive this SPP message?

How would you propose to organize an ordering of song parts? As BeatBuddy song is not exactly linear (as you can loop each song part an indefinite amount of times). For exact positioning BeatBuddy will need to be provided with a 2D coordinates like in (x, y) where “x” is song part (like 0 for intro, -1 for outro, N (natural) for song part number N; and “y” is that exact value of MIDI Beat upon which to start the song part specified by “x”. For supporting fills and transitions, you will probably need either additional special values for “x”, or even a third coordinate.

I personally can think of “linearizing” the BeatBuddy song as follows [Intro][Main part 1][part 1 Fill 1][part 1 Fill 2][…][part 1 Fill N][Transition][Main part 2][…all fills…][transition] … etc. The traditional MIDI Beat (a single coordinate) will address a specific place in the song in a unique way.

When you consider such linear representation of a BeatBuddy song, it would be pretty feasible to make BeatBuddy to accept a traditional SPP message. But the overall usefulness of BeatBuddy sending such an SPP message is close to zero, as this scheme is totally not like the song is actually played.

Furthermore, in order to speak about song positions, BeatBuddy will probably need a special playback mode with the fixed song structure. I personally feel that will reduce the overall usefulness of the BeatBuddy to a simple backing track player. Though this could be actually very useful if, for example, BeatBuddy could also play a user provided MP3 file together with this. The necessity of such a mode is to be evaluated, and it may get added eventually.

As far as I know, the priority for now is to fix urgent bugs for Windows software version and to get a Mac version ASAP.