Audiobus: Use your music apps together.

What is Audiobus?Audiobus is an award-winning music app for iPhone and iPad which lets you use your other music apps together. Chain effects on your favourite synth, run the output of apps or Audio Units into an app like GarageBand or Loopy, or select a different audio interface output for each app. Route MIDI between apps — drive a synth from a MIDI sequencer, or add an arpeggiator to your MIDI keyboard — or sync with your external MIDI gear. And control your entire setup from a MIDI controller.

Download on the App Store

Audiobus is the app that makes the rest of your setup better.

BANK SELECT via MIDI...iOS SYNTHS.

** PLEASE FEEL FREE TO POST ON THIS THREAD WITH UPDATED APP INFO FOR THIS LIST AND I'LL MAKE CHANGES TO THIS POST, Cheers **

So, I'm trying to find those synths that will accept Bank Change messages. So far I've got Sunrizer working very nicely. Nlog says it can, but not having much luck. I'm about to have a go at Magellan, as it states that ability in its specs.

Before I look through another 20 synths, was wondering if some of you might know for sure any of those that do.

Cheers

UPDATED 2016....

Updated post...

Successfully used MSB and LSB to select presets and their banks in these apps... (PC= Program Change)

  • SUNRIZER (MSB for bank)
  • MAGELLAN (MSB for main banks) (LSB for cache banks)
  • GALILEO ( " " same as MAGELLAN)
  • NANOSTUDIO EDEN (LSB for Bank Change & PC for preset)
  • NLOG PRO ( some success for first bank using MSB)
  • ARCTIC PRO (LSB for bank)
  • THUMBJAM ( see earlier in thread for Sonosaurus' description)
  • DXi (preset select via PC)
  • ELECTRONIC PIANO SYNTHESIZER (preset select via PC)
  • SYNTH DRUM & ARP (something was changing....no idea how, where or why :) )

  • EDIT: - WAVEMAPPER (preset select via PC)

*** FORUM USER EDITS - updates by Audiobus forum users... *** NOV 13th 2016

  • Animoog (preset select within current category via PC) from @gburks
  • Moog Model 15 (same as Animoog) from @gburks
  • Poison-202 supports preset change in standalone mode (not as AU, as far as I can tell). from @Shaken&;Stirred
    (Bank select 00: Bank A, Bank select 01: Bank B, Bank select 10: user preset bank UU ...followed by PC as you would expect.)

  • KQ MiniSynth in standalone mode supports PC 0-127 to select presets 1-128. from @Shaken&;Stirred

  • from @Shaken&;Stirred (@lbiyikoglu said: the next version of SynthMaster player app will include bank select and program change features.) ... I don't see SynthMaster listed in the initial post... I just verified using Sidecar, that it works, and the preset display in the UI tells exactly what MSB/LSB/PC is required to select that preset. "Pro" upgrade is required for this feature.

*** EDIT 31st August 2015..... ***

A couple of quick additions & amendments..

Virsyn apps:

  • CUBE
  • TERA
  • Micro TERA

all now have Bank & Program-Change functionality. MSB(0) LSB(32) + Program Change # for preset.

apeSoft apps:

  • iDensity
  • iPulsaret
  • Stria

All have Program Change working in the snapshots menu. No success with Bank Change using MSB, however I see they have NRPN functionality and I'll need to test this.

  • MITOSYNTH has very cool / easy Bank & Program Change functionality (thanks @dwarman). MSB(0) LSB(32) & PC

  • FUNKBOX - Program Change for kits.

  • CAUSTIC - Program Change ( although I'm getting midi quirkiness with any midi channel 9+. Anyone else?)
  • GESTRUMENT - Programme Change for presets.

I'll add more soon.

  • NAVE - Bank & Program change using MSB(000) for Bank 1 (001) for Bank 2 etc. + Program Change. Thanks to @rad3d for adding this. I'm particularly happy to be able to do this with Nave.

  • Feb 2017 - DRC 1.0.9 responds PERFECTLY to PC. I have a problem atm to send PC with my Quneo, but it works perfectly with my BCR2000 :)
    Also Model 15 is well responding ! :) (Thanks to @crony)

end of EDIT

No program or bank change success with these apps...

  • Thor
  • Nave EDIT: See above.
  • iSem
  • iMini
  • Addictive
  • Cube EDIT: see above
  • Cassini
  • Wavemapper EDIT: Wavemapper DOES send program change info.
  • Alchemy
  • iTuttle
  • Grain Science
  • Voice Synth
  • iPolysix
  • iMS20
  • TF7
  • MOBILE MUSIC SEQUENCER
«1345678

Comments

  • Magellan and Galileo definitely do.

  • How can I assign midi to bank select? I'm interested too.

  • @CSWinn Thanks Colin, yeah Magellan is working well, I'll give Gallileo the same attention.

    @Dramatispersona13 It's not the easiest or most clearly documented topic, but if you have a controller that can send MSB and LSB data (Most Significant Byte, Least " " ) you'll be able to have some control over the banks and presets in the apps already mentioned.

  • edited March 2014

    ThumbJam uses it as follows -


    It accepts Bank Select and Program Change messages to load instruments or scales. The following conventions are followed, and apply to the instrument based on the channel number of the event:

    Bank 00 - Program changes after receiving a bank select of 0 will load the Default preset instrument with the given index, as displayed in the Instrument Preset list's Default section.

    Bank 01 - Program changes after receiving a bank select of 1 will load the User presets instruments with the given index, as displayed in the Instrument Preset list's User section.

    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).


    But it seems that controllers that actually let you send bank select messages are hard to come by nowadays. What do you use?

  • THUMBJAM...my very first music app purchase 4 years ago. I showed everybody that app while I was travelling. :)

    I'm using an EMU XBOARD 61. (It has awesome key action btw)

    So could I access those banks with an MSB and program change?

  • Ahhha! I was trying to get this working last night, and NLog was the only app that seemed to respond to program changes. Looks like Bank change is the missing link for me, and program change is the missing link for you re: getting NLog working :)

  • @Jam Maestro I kind of got NLOG working, it responded to my program changes but only within the first bank. NLOG's midi info says that the PRO version should be able to select 2 further banks, but I couldn't access them...

  • Not quite synths but Sampletank and bs16i both respond to PCs.

  • @sonosaurus after 10 minutes trying to get ThumbJam working after reading your post, I discovered there is an 'enable Program Change' setting in ThumbJam - works perfectly as described now. I assume that isn't on be default because it responds to global midi messages as well as direct midi messages and so it could potentially respond to messages meant for other devices if it wasn't careful?

    @spookyzoo I can't seem to get Sunrizer to work properly at all. How you describe your experience with it to me? Are you using an app to send it the messages or a device? For me I have got it to change Program/Banks, but it responds to about 1/50 messages I send, seemingly randomly.

  • @sonosaurus also, am I right in thinking DrumJam doesn't support program change? Or is there a 'enable Program Change' switch somewhere that I haven't found?

  • Bank/program change is an essential part of being able to recall a midi sequence. It's been a severe source of iOS production frustration for me.

    Here's to hoping AB2 takes some of the pain away. Though, and I'm loathe to say it on the AB forum, midi bank/program change is a ~30 year old standard and I wish synth app developers had a painless way of including it in their apps vs (or in addition to) using what is essentially a proprietary solution. If AB decides to shutter the shop (or more likely: Apple or Steinberg/Roland/Korg offers them piles of money) what happens to all of the 'states' we've saved? I'm sure it'll be fine but I'd be more sure if all my apps could receive bank/program changes(and my host app could send/record them). Thank you to all the devs that have gone through what I can only assume to be a huge pain to get it working!

  • @JamMaestro said:

    @sonosaurus also, am I right in thinking DrumJam doesn't support program change? Or is there a 'enable Program Change' switch somewhere that I haven't found?

    Correct, DrumJam does not support it. If it did, what would you have it do given the Group/Name internal preset naming conventions? Also given that bank select can be misunderstood and often not well supported?

    @syrupcore, many developers may ignore PC support simply because there is no completely logical numeric mapping to their presets, and they consider it archaic... although that is just a guess...

  • @sonosaurus good point. I would imagine there are also a clutch of very capable developers with compatible preset systems who don't even know what a program change is or why anyone would care! If my obj-c was worth even a rabbit poop I wouldn't make a music app -- I'd try to make super easy to implement frameworks/plugins for all the bits of standardization I want in my music apps. :)

  • @sonosaurus I would have it change the drum sounds on the pad that the user can play manually themselves on the bottom. Just set it all to bank 0, and program change through in sequential order form eg. Bendir -> Udu. I wouldn't have it affect the Group/Name presets at all (just as midi on/off notes dont right now).

  • @JamMaestro said:

    @sonosaurus I would have it change the drum sounds on the pad that the user can play manually themselves on the bottom. Just set it all to bank 0, and program change through in sequential order form eg. Bendir -> Udu. I wouldn't have it affect the Group/Name presets at all (just as midi on/off notes dont right now).

    Consider it done, then!

  • @sonosaurus said:

    @JamMaestro said:

    @sonosaurus I would have it change the drum sounds on the pad that the user can play manually themselves on the bottom. Just set it all to bank 0, and program change through in sequential order form eg. Bendir -> Udu. I wouldn't have it affect the Group/Name presets at all (just as midi on/off notes dont right now).

    Consider it done, then!

    Wooo! I will build functionality to take advantage of it from my end then :)

  • That just happened. Love this place.

  • @sonosaurus and @JamMaestro
    Would you guys consider documenting the details of what you do for this and making it available for other devs to use and contribute to? I'm sure that having a set of iOS inter app standards/guidelines would help more interoperability in the future.

  • @SpookyZoo said:

    @CSWinn Thanks Colin, yeah Magellan is working well, I'll give Gallileo the same attention.

    @Dramatispersona13 It's not the easiest or most clearly documented topic, but if you have a controller that can send MSB and LSB data (Most Significant Byte, Least " " ) you'll be able to have some control over the banks and presets in the apps already mentioned.

    Dose it work only with usb right? I'm using 5 pin midi. :/

  • edited March 2014

    @Dramatispersona13 said:

    Dose it work only with usb right? I'm using 5 pin midi. :/

    MIDI is a standard. How MIDI is transmitted (wireless, USB, DIN) doesn't matter.

  • @PaulB well I don't know if there would be anything to document. All @sonosaurus is going to do is listen for Midi Program Change messages in DrumJam, which is straightforward if you've implemented midi.... and if not then the documentation you speak of would really be 'how to implement midi' which is a much bigger topic! :) I guess the author of MidiBus could include an easy way to listen for program/bank changes perhaps?

    From my end I'm just going to take advantage of it in that I have some drum templates customised for DrumJam that the user can select, which formats the drum kit for each of the different kits in DrumJam (num pads, correct midi assignments etc). With it listening for program changes I can also make the template automatically switch to the correct Preset in DrumJam.

  • Also, if anyone has an ideas how to get Sunrizer to respond to midi program changes I'd be grateful... !

  • I meant documenting details of which PCs select particular presets, banks, etc. Stuff that is unique to your own apps, so that other devs can introduce compatability features as you are doing. It may be a very small amount of information, but it's the visibility and accessibility of it that I'm considering.

  • Ok, I have an Arturia Keylab connected via 5 pin midi to my irig PRO to my ipad air.
    What CC # should I send to change presets in Magellan and Sunrizer? :)
    Thank you!

  • @JamMaestro, since the IAPs can change the list, it sounds like you would prefer that kits have a fixed PC number for all time? Or will the user be able to easily configure in your template the desired PC # associated?

  • @Dramatispersona13, page 25 of the Keylab manual has info on it, but I don't have that controller so I can't speak to specifics.

    http://www.arturia.net/downloads/keylab/manuals/keylab_EN.pdf

  • @PaulB ahh, that is a good idea yes. I'd like to implement it in JM but its a bit impractical the way my app works (loading a soundbank can take a 3-10 seconds depending on the device it runs on in my app, would be much easier just to switch to the app and do what you need).

    @sonosaurus ahh, I see. Well I thought you would just include the standard packs as program numbers 0-24, hadn't considered IAP. From the perspective of a user using an external app/device I guess it would be best to assign IAPs contiguously to channel 25 and upwards so there are no gaps (otherwise the user might think they've reached the end of the program changes if there are big gaps in the order). I guess this means in the case of my app that exported templates made on IAP in DrumJam might invoke different programs depending on what IAP packs the user has installed, but I'll have a way to edit the associated PC and so they can just look at the name of the template and fix it themselves. Probably better than having a lot of gaps in the PC list I'd say. What do reckon?

  • edited March 2014

    Hi @JamMaestro What controller are you using?

    On my xboard61 I have the option to include and send on recall, MSB and LSB data within a stored patch. Although Sunrizer only uses the MSB part.

    So to select say patch #30 in the first bank I'll set MSB to 000 and program change to 029.

    .....patch #64 in the 2nd bank...MSB to 001 and p/c to 063

    .....patch #17 in the 3rd bank....MSB to 002 and p/c to 016.

Sign In or Register to comment.