Jump to content

Midiphy seq V4+ Remote control improovement


Anonyme-x222
 Share

Recommended Posts

Hi,

I would like to add  a remote control option in the external controller section.

seq_midi_in.c

The function static s32 SEQ_MIDI_IN_Receive_ExtCtrlCC(u8 cc, u8 value) need to be modified like this static s32 SEQ_MIDI_IN_Receive_ExtCtrlCC(u8 cc, u8 channel, u8 value)

The call like this:

SEQ_MIDI_IN_Receive_ExtCtrlCC(midi_package.cc_number, midi_package.chn, midi_package.value);

i will have to add :

Mutes By Midi Channel

in the const char* ext_ctrl_str[SEQ_MIDI_IN_EXT_CTRL_NUM] =

However the mute channel part isn't in a case but directly in the root of the function ?

can help ?

Thanks in advance,

Have a good day,

Rgds,

Link to comment
Share on other sites

Do you have experience in programming? The reason I ask is because it requires that. And your approach of changing the args of a core function is definitely not the right way.

Btw: I think this is pretty custom for your needs, since the mute works in a different way in the midi implementation (regarding tracks).

Otherwise, if you absolutely need it and above all if you are confident that you can do it, then you can hack the seqv4 source and define and include your own external control as a CC and specify & transmit the channel there as a value, which is used in your own loop through the tracks and mutes or unmutes the corresponding tracks if (value == track's channel).

e.g.

seq_midi_in.h -->
 

#define SEQ_MIDI_IN_EXT_CTRL_MUTE_BY_CHANNEL 16

#define SEQ_MIDI_IN_EXT_CTRL_NUM_IX_CC     17

<-- (make sure to increase the NUM_IX_CC)

 

seq_midi_in.c -->

seq_midi_in_ext_ctrl_asg[SEQ_MIDI_IN_EXT_CTRL_MUTE_BY_CHANNEL] = 122; // your cc for that control


 

const char* ext_ctrl_str[SEQ_MIDI_IN_EXT_CTRL_NUM] = {

..

"Mute by channel", // your name for that control

}

<-- (index 16 must be noted here)

 

append your external control handling inside:

static s32 SEQ_MIDI_IN_Receive_ExtCtrlCC(u8 cc, u8 value)

if (cc == seq_midi_in_ext_ctrl_asg[SEQ_MIDI_IN_EXT_CTRL_MUTE_BY_CHANNEL]) { ... }

 

but i think if you want to change something in the code, you have to get familiar with the structure of the entire source anyway.

 

Greetings,rio

Edited by Rio
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...
 Share

×
×
  • Create New...