Menu

#37 Configure MIDI channels for additional manuals.

open
GUI (8)
5
2011-03-19
2011-03-19
Eric Moreau
No

The configuration of MIDI channels for additional manuals could be explicit and specified with command-line options,
rather than being implicit and/or hard-coded in the emulations (currently, it is most likely base channel + 1).

This would allow to compensate for less flexible MIDI controllers with split keyboard capabilities.

Discussion

  • Nick Copeland

    Nick Copeland - 2011-03-19

    This should only require changes to the GUI, it tells the engine which channels to respond on. One change to add the option and then track them in the emulator interface code.

     
  • Nick Copeland

    Nick Copeland - 2011-03-19
    • labels: --> GUI
    • assigned_to: nobody --> ncopeland
     
  • Eric Moreau

    Eric Moreau - 2011-03-19
     
  • Eric Moreau

    Eric Moreau - 2011-03-19

    Here is a first version of a patch against 0.60.8

     
  • Eric Moreau

    Eric Moreau - 2011-03-19

    Obviously this patch is not working.
    When i specify more than 1 channel (using -channel 1,3)
    the lower manual stops working

     
  • Eric Moreau

    Eric Moreau - 2011-03-19

    Problems seems to be calls to initConnection

     
  • Eric Moreau

    Eric Moreau - 2011-03-19
     
  • Eric Moreau

    Eric Moreau - 2011-03-19

    Here is a working patch to version 0.60.8.
    Not so elegant, though

     
  • Nick Copeland

    Nick Copeland - 2011-03-21

    Wow, that is quite a patch. I might try and streamline it a bit such that it does not touch all the emulators - the ones that use a single channel, ie, the majority, don't need such changes. I think there may be extra error checking to make sure both stay within the 0..15 limits.

    Many thanks for this, will see about making it official in 0.60.9 and 0.70.0.

    Kind regards, nick

     
  • Eric Moreau

    Eric Moreau - 2011-03-21

    I agree.
    I wen't a little over the top with a array of channels for each
    synth, but I wanted to make a quick test and was too leazy to try
    to understand all the code at first.
    Maybe a more elegant solution would be to use the guiSynth->second
    pointer for the second synth of the B3.

     
  • Eric Moreau

    Eric Moreau - 2011-03-21

    Of course you could as well just add guiSynth.midichannel2

     
  • Nick Copeland

    Nick Copeland - 2011-03-21

    I was probably going to look at using the second synth layer however your approach of -channel 1,3 is nice, just needs a method to carry over the second channel to the actual GUI emulation code.

    kind regards, nick.

     
  • Nick Copeland

    Nick Copeland - 2011-11-07

    Been a while since I reviewed this case, it is still open.

    More issues that are likely to happen: this option can configure that starting midi channels however when you do a 'midi channel change' from the GUI then I am not sure what it should do:

    a. continue as currently to be chan and chan+1?
    b. implement something like chan and chan+org_difference?

    Also, when you change the operating mode of some of the synths then I play with their midi channels. For example, if you go from dual to layer I put them both on the same channel. If you go from layer to dual I configure the chan+1. This is not difficult to work back into your proposal, admittedly, and I like the proposal.

     

Log in to post a comment.