Preset Switching

Hello,
I plan to use my iPad on stage, not with too complicated setting (iMidiPatchbay as Midi Router). Due to testing by myself and another thread here I saw, that only few synth apps support patch change using Midi Prog Change et al. So iPad Synthesis is still faily limited in live situations.
So would it be possible to switch presets in AudioBus using Program change?
Or maybe you could implement preset switching in your SDK, so that devs like that of iMidiPatchbay could start a preset change remotely?
Or could at least the preset popup be made permanent visible/visibility toggleable? So one could switch patches easier.

Also it would be great if Audiobus would start apps automatically upon preset loading.

I've bought some synth without the possiblity to switch patches using Midi, this money was wasted...

«1

Comments

  • There may be a way to achieve it with some mapping using something like the iRig Blueboard. I've looked at that but it isn't quite what I need. Might work for you - worth a look perhaps.

  • I like where you're going with this. Wish every app supported PC messages.

    For the right now anyway, I know that Sunrizer and Magellan both support MIDI program changes. Thought iMini might too but I'm not sure. Though iMini will likely present other midi problems in a love situation.

    Nanostudio doesn't support program changes but it will allow you to set up 15 synths/samplers on 15 different channels. So, depending on how easy it is to switch midi channels on your controller, that might be an option.

    I know there are others. Hopefully someone will chime in with some additions.

  • ThumbJam, Cube Synth, and N-Log Pro respond to PC too.

  • WaveMapper too.

  • Add Galileo to the list.

  • DrumJam too...

  • Nice additions.

    If Cube does, I wonder if other Virsyn apps do as well? Same question for Rolf's apps: Does Nave? If Magellan and Galileo do, Mini Synth probably does as well.

  • Nave and Addictive were no-go for me.

  • Hey guys, thanks for your tips (especially the tip with nanostudio looks really interesting). there is already a list of synths which can be midi PC controlled: http://forum.audiob.us/discussion/comment/52820#Comment_52820 though this could be put all on some wiki or so, so that it is easier to find. Maybe this also would "inspire" some music app devs ^^. I'll see what I can do.

    anyways... I still think Audiobus itself really should offer an uncomplicated way for live musicans to switch presets... I've already thought about creating a IAA Host for keyboarders until I found IMidiPatchbay... well sadly I'm way too busy to do it by myself...

  • edited September 2014

    Wow, thanks for digging that up. That's very handy. Two gems for me from that thread:

    NanoStudio supports patch changes??? the what? But of course it does. Matt's like that.

    From @sonosaraus

    Bank 02 - Program changes after receiving a bank select of 2 will change the selected slot in the Quick Key/Scale set (as shown when pressing the #/b button in the sidebar).

    Thumbjam really is the gift that keeps on giving. Can't wait to play with that.

  • Don't have my ipad with me so I can't test that TJ bank 02 business. Messing around with my phone I'm wondering: will bank 02 + PC change the quick select preset sound from the split list or will it select one of the saved quick select key/scales? I'm hoping for the latter! If not, perhaps one day bank 3 could do that?

    If it's scale, along with the 'Input Scale Lock' and MIDI THRU, that means you can use program changes to quickly set the scale of the white keys on your keyboard, controlling any synth. EPIC.

  • Hmm, there's a feature in the TJ MIDI settings that's labeled 'Use Scale Change NRPN' but I don't see anything about it I the manual.

    Sorry to thread derail but could you explain that one Jesse?

    That sounds better than program changes as those could go through to the receiving app.

  • I didn't fool with PC across splits, so I'd be interested in that as well.

  • I PC sunrizer while live looping all the time using akai mpk mini without a glitch.

  • edited September 2014

    @syrupcore, bank 02 PCs will change the quick key/scale, just like you wanted, however it happens to be loaded at the time.

    As for the scale change NRPN, it is a convention I came up with but haven't spread the word about yet, currently only the experimental app KeyIn supports it.

    Here is a description of the
    spec for completeness, although I doubt you can use this as is, it probably needs some coding to take advantage of it in practice.

    Using NRPN # 72 (MSB) ,53 (LSB) to change the playable notes:

    CC 99 72
    CC 98 53
    CC 6  hi_7bits
    CC 38 low_7bits
    

    Where the value of the bits are a mask where the 0th bit is a C and the 11th bit is B, the remaining bits will always be 0
    value.

    For example a C major scale (all white keys) would look this in binary
    (the least significant 0th bit is on the right, a C):

            HI byte       Low byte
    binary:       0010101    0110101
    decimal:     21              53
    hex:           0x15           0x35
    

    I was planning on letting other developers know about this convention
    sometime soon, and I may extend it to another NRPN that does intervals
    in a scale along with key, as an alternative.

    Right now TJ only listens for it, but for completeness I need to add send as well.

  • Thank you! Great news about bank 2.

    I think) I get the NRPN bit (no pun intended but I'm leaving it in there). We could send an NRPN message with a binary mask to explicitly set the notes in the scale? I don't quite get how the mask works (MSB data=mask, LSB data=key?) but since I wont be doing it anytime soon I'll just wait until you publish the spec. I appreciate the explanation.

    Perhaps one day Bank 03 could scroll through the master list of scales, using whichever key the app is currently set to? I realize that the playing surface is a big part of the Thumbjam magic but I find it a lot easier to play the same part twice on a physical keyboard. I love the scale lock feature like my daughter loves Adele.

  • iVCS3 is ready too

  • @syrupcore, you are close, the bitmask is 12 bits, so the low 7 bits are in the LSB part of the data, and the remaining 5 bits (plus zero padding) is in the MSB part of the data.

    Also, make note that for the PC stuff, bank select 00, 01, 02, those values are the MSB part of the bank select, the LSB is ignored.

  • edited September 2014

    Ah, thanks. I coudn't work out how in the world a 12 tone mask was happening in 7 bits!

    I was gonna drop it but now my inner nerd must be satiated. So, your example is read right to left with the last (first) two zeroes dropped?

    MSB      LSB
     0010101  0110101
     xxBxAxG  xFExDxC
    

    I like the intervals+key NRPN idea a lot, probably because a) intervals make more sense to my little mind and b) you'd only have to set up a fixed set of scales (interval sets) and a set of the 12 notes in order to send it along vs creating each scale/key combo from scratch. Would you also use a bitmask for this (0=half step, 1 = whole step)? There are some whacky scales that go beyond 7 intervals and I'm not sure how you'd communicate the end of scales with less than 7 intervals like minor pentatonic or something. Guess you could limit key to 4 digits and have 10 left over for intervals to cover the whacky scales.

  • edited September 2014

    @syrupcore, your inner nerd read it correctly :)

    No, the intervals + key variety would essentially be identical to the above 12bit mask for the intervals, except the 0th bit represents the root of the scale instead of the absolute C note. Only the intervals with a 1 is in the scale. The root note itself would have to be expressed in a separate NRPN, which could be a regular midi note number as the value (only need to use LSB data byte on that). Of course that still limits us to 12-tone equal-temperament scales, but someone could always add more intervals (and a tone count) with additional NRPNs.

    There exists in the MIDI spec something called MIDI Tuning Standard, which is a set of SysEx commands that let you specify precise microtonal tunings for each note across the keyboard or optionally scale tuning. http://www.midi.org/techspecs/midituning.php Some hardware synths may support this, but very few software ones do. Perhaps one day I'll make TJ do this.

    Regardless, this wasn't the point of my NRPN convention, I just wanted a simple way to communicate what scale layout to present on screen, in the basic case.

  • That makes sense, thanks a lot for explaining. Sorry for the derailment again!

  • edited August 2015

    @syrupcore said:
    Wow, thanks for digging that up. That's very handy. Two gems for me from that thread:

    NanoStudio supports patch changes??? the what? But of course it does. Matt's like that.

    Yeah this was a happy discovery. I had managed to get the Program Changes working pretty simply, but it was when I realised that I could also change bank using LSB rather than MSB that this became ultra-cool.

    Usually MSB(0) LSB(32) as you probably know, are used for Bank-Changes, however Nanostudio is a little different:

    NANOSTUDIO Bank Changes:

    Banks:

    • Global A, B, C, D, E, F, G - MSB (000) LSB (000) - (006) respectively.

    • Project Bank - MSB (000) - LSB (007)

    Then Programme Change as normal.

    I'm gonna try and update the thread/post that was linked above. A few more to add.

  • We added bank select, program change midi messages to SynthMaster player app, the next version which is supposed to be released in 7-10 days will have this feature

  • @lbiyikoglu said:
    We added bank select, program change midi messages to SynthMaster player app, the next version which is supposed to be released in 7-10 days will have this feature

    Excellent -- was hoping this would be added!!!

  • @sonosaurus said:
    DrumJam too...

    BTW: Thanks for those new drums!

  • edited September 2015

    Highly precise thoughts ...
    And as this thread seems to bear another side-tracking:

    @andik86 said:
    ... though this could be put all on some wiki or so, so that it is easier to find ... well sadly I'm way too busy to do it by myself...

    I'd like to see midi learn abilities (state saving w/, & w/out midiflow) on another wiki-page.
    sunrizer,
    aufx:series, and elastic drums etc.

  • Bump - is there an updated list anywhere of iOS apps that respond to MIDI patch changes?

  • Awesome! Thank you.

    Disappointing list isnt it :/

    You'd think more developers would be getting a bit more hip to this idea by now?

  • @MikeyP said:
    Awesome! Thank you.

    Disappointing list isnt it :/

    You'd think more developers would be getting a bit more hip to this idea by now?

    Hey @MikeyP It's probably missing a fair few apps. Please feel free to leave a post there when you find an app that accepts preset/bank change and I'll update the original post to reflect it.

    The list is messy and I'd love to check out more apps and update it but just don't have the time luxury lately.

    My main wish is this feature for Gadget. :)

Sign In or Register to comment.