Jump to content

Select a song using program/control change events


whomper

Recommended Posts

As I am starting to use Seq3 more massively in my projects in slave mode to Logic 7, I will be in need to switch the current song in Seq3 in the beginning of a Logic arrangement.

Is there a way to select the current song using a MIDI event, progam change, control change or similar? I could not find anything of use in the CC implementation doc.

If not, it might be a nice addition to the midi implementation.

Whomper

Link to comment
Share on other sites

No, currently it isn't possible to change a pattern or a song via MIDI. Integrating such a feature is easy, but I'm still unsure about the best solution (e.g. if CCs or Program Changes over different MIDI channels are better...)

The advantage of a Program Change Event is, that PC/Mac based sequencers are (mostly) sending them before a new measure starts, so that the next note will already play the newly selected sound (or for MBSEQ: that the right pattern/song is selected on time) - this is perfect!

But disadvantage: there is only one program change possible per MIDI channel. This would break up the "single MIDI channel" approach for controlling MBSEQ

CCs have the advantage, that there are 128 numbers free per MIDI channel, enough for switching 4 patterns and one song parameter. But only a small number of PC/Mac based sequencers allow to apply a negative delay to the track which sends the CCs (Logic allows this, not sure about other sequencers...)

However, here a quick solution for switching Songs via Program Change over any MIDI channel.

It has to be inserted into seq_midi.inc (search for SEQ_MIDI_ProgramChange, and add the following)


SEQ_MIDI_ProgramChange
SET_BSR SEQ_BASE
movf SEQ_SONG, W, BANKED
andlw 0x80
iorwf MIOS_PARAMETER2, W
movwf SEQ_SONG, BANKED

return
[/code]

Best Regards, Thorsten.

Link to comment
Share on other sites

I think that in the days of so many varying latencies on instruments, a negative track offset should be an included feature on any midi sequencer. I know that cubase logic and sonar all support it, and also, most sequencers allow direct editing of the midi data, so that you could put the CC message before the first note manually if necessary....

So I think that CC's would be be the best implementation. Just my 2 cents :)

Link to comment
Share on other sites

Thanks TK,

I had added the change, compiled, uploaded and it works like a charm!

In regards to whether to use CC or program change, I find program change to be ok for the seq songs as it is a global mode for Seq, however doing CC for pattern change might make more sense.

If one could have set a midi channel for group, it would make sense to send program change on that channel to change pattern. I am not sure what the entity group represents in the internal user model of seq3 so perhaps there is little sense in doing that.

Whomper

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...