Regular iOS musicians will be familiar with Arpeggionome and Fugue Machine from developer Alexandernaut. However, a few days ago, a new app appeared – LINK to MIDI – and, if you are the kind of musician (iOS or otherwise) who likes to link all your MIDI kit together and getting it playing in sync, then it might well be of interest.
As implied by the app’s title, LINK to MIDI attempts to provide a bridge between Ableton’s new LINK technology and the older, more widely used (but, under iOS, also often problematic) MIDI Clock Sync. Both technologies attempt to get MIDI ‘stuff’ working together and playing back in time. If you have a MIDI sequencer connected with a few MIDI-based drum/groove box style devices (hardware or software) and perhaps a synth or two with its own arpeggiator or pattern storage system, these sorts of technologies (in principle at least) ought to allow you to hook them all together, press a sort of ‘master’ play button, and they will all kick off at the same time and playing at the same tempo….
OK, so that’s the theory and, in fairness to MIDI Clock Sync, in the world of hardware MIDI and desktop DAWs, oftentimes it works pretty well. Under iOS, however, MIDI Clock Sync is…. well…. let’s just say ‘a bit unpredictable’ shall we? Lots of apps supposedly support MIDI Clock Sync (whether it’s to receive, send or both) but, in practice, it can prove quite difficult to get some (not all) of these apps talking to each other. The root cause of this? Good question and, while some of it might well be down to MIDI implementation within specific iOS music apps, (and with no real insider technical knowledge to back this up!) it would also not be a surprise to myself (and perhaps some of you also) if some of the issues are actually down to iOS itself….
A few weeks ago, Ableton – makers of the excellent Ableton Live desktop music production software – introduced Ableton LINK. This provides an alternative means of synchronising playback/tempo between suitably LINK-enabled MIDI software devices. For reasons I’m not sure I fully understand at present (although I’m hoping might become apparent), while Live is a desktop application only, Ableton have developed LINK for iOS also. You can, therefore, sync suitable iOS music apps to Live on the desktop.
Rather wonderfully, LINK doesn’t require Live to function so, if you have a set of LINK-enabled iOS music apps sitting on your iPad, you can now use LINK to get them sync’ed together. And, as I posted a few weeks ago, Ableton have worked with a number of popular iOS music app developers as LINK was in development to ensure that some apps were ready to go with LINK support when the protocol was launched. My own initial experience with this technology was very positive and the iOS community as a whole has reacted with enthusiasm to this new method of synchronisation.
There is, of course, a catch…. app developers have to add the LINK SDK/protocol to their apps before you can hook them together. Yes, there was a good bunch of apps that were updated to include LINK when LINK itself was launched but this is still just a select few; if the protocol is going to be a real success then we need to see widespread adoption. That may take some time….
However, in the meantime you could make use of Alexandernaut’s LINK to MIDI iOS app. This is a free download from the App Store, requires iOS8.0 or later, is a universal app and, at just 2 MB, is unlikely to cause anyone a storage space issue. The primary (only!) function of the app is to try and bridge between LINK and MIDI Clock Sync so, if you have some LINK-enabled apps on your system, you can try to get other devices/software that offers MIDI Clock Sync (but not LINK) to sync with them.
In the app’s description, Alexandernaut is keen to point out that the intention with LINK to MIDI is actually so musicians can drive external MIDI devices (hardware) from their iOS devices running a LINK-enabled app or two. He also suggests that, while you can try to use LINK to MIDI to sync LINK-enabled apps to non-LINK-enabled (MIDI Clock Sync receive supporting) apps, the results are not guaranteed (for the same reasons, I suspect, that MIDI Clock Sync is sometimes unreliable under iOS in the first place).
Taking that qualification on board though, if you are an iOS-only musician or, like me, no longer own much by way of external MIDI hardware outside a master controller keyboard or three, it’s too tempting not to experiment with getting LINK-enabled apps to drive MIDI Clock Sync enabled apps via LINK to MIDI… so, does it work?
Link between syncs
The LINK to MIDI app itself is a very streamlined and straightforward affair. Five buttons dominate the centre of the display. No prizes for guessing what the Tempo button does…. and there is a slider with +/- buttons that appears at the base of the screen for doing just what you would expect. When apps are linked with LINK to MIDI correctly, they will follow tempo changes made here.
The LINK button simply allows you to enable Ableton LINK and tells you how many apps are currently running with LINK enabled. Tapping the MIDI button opens a dialog where you can activate a MIDI destination that you wish LINK to MIDI to send MIDI Clock Sync data onwards to. Depending upon what apps you have running or external MIDI hardware connected (for example, a MIDI interface) to your iOS device, you will see different items appear in this panel. Note though that you can only identify a single destination at any one time. You can also set a global Clock Offset vale if required to compensate for any MIDI latency in your system.
The central button triggers the app to start transmitting MIDI Clock Sync data to the selected MIDI destinations so they will play back in time with your LINK-enabled apps. The final button – which on the screenshot shown here is displaying ‘1 bar’ simply controls the ‘launch quantization’ – that is, how long LINK to MIDI waits before attempting to trigger the MIDI Clock Sync destinations. The default setting is 1 bar – so MIDI Clock Sync data will start being transmitted as soon as your LINK-enabled apps reach the start of the next bar – but you can adjust this setting between 1/16 and 8 bars as required.
While the LINK end of things is pretty easy to set up (you just enable LINK in any of the apps that support it), the other additional step involved in this configuration is to set any other devices/apps to receive MIDI Clock Sync…. and it is worth noting that they can only receive this data; you can’t send MIDI Clock Sync data from another source to LINK to MIDI. This does, for example, rule out using the app with something like Cubasis as Cubasis only has MIDI Clock Sync send; it doesn’t support MIDI Clock Sync receive.
Does it work?
As mentioned above, the developer is keen to point out that using LINK to MIDI to sync other iOS music apps with LINK-enabled apps is not really what the app is for…. but that doesn’t mean we can’t try :-)
I tested this with a few different app combinations. So, for example, with both Patterning and Elastic Drums running as LINK-enabled apps (and suitably locked together), I attempted to get LINK to MIDI to then transmit its MIDI Clock Sync data onwards to apps such as Rock Drum Machine, Oscilab, DrumPerfect and Egoist. As Alexandernaut suggested, things were not always straightforward but I did achieve some success.
For example, I managed to get Rock Drum Machine and Egoist to each sync in turn to Patterning and Elastic Drums via LINK to MIDI. Both apps also responded to the ‘Play’ button within LINK to MIDI, starting and stopping as requested. I also managed to get Egoist to play nicely in this fashion. However, while I could trigger playback in DrumPerfect, it didn’t seem to want to hold a stable tempo when driven by LINK to MIDI.
I also had the usual ‘fun’ of trying to work out which MIDI destination setting within LINK to MIDI would work with which MIDI ‘in’ setting in the various destination apps I tried. This is, of course, no different from when sending MIDI note data between different iOS apps…. it is, frankly, a bit of a pain and, again, a result of a combination of just how MIDI is implemented within iOS and – perhaps – some developers who struggle with how best to respond to the somewhat flaky MIDI that the OS offers them. None of this is, however, necessarily the fault of LINK to MIDI; that it works at all with some apps is a positive thing.
All that said, having a combination of (for example) Patterning, Elastic Drums and Rock Drum Machine all playing back together and in time was a lot of fun. Just how complex/weird/genre-crossing would you like your rhythm parts to be? :-)
I didn’t explore how LINK to MIDI might work with external hardware – I don’t really have the necessary kit to fully investigate this – but I assume that, with a suitable MIDI out connection, you could hang MIDI hardware devices on a number of different MIDI channels and send them LINK to MIDI’s Clock data. If you have tried this for yourself then please feel free to add a comment below…. I (and others I’m sure) would be interested in your experiences….
I’m happy to admit that I’ve ‘tested’ LINK to MIDI with the kind of application that Alexandernaut has explicitly said LINK to MIDI isn’t really intended for (sorry!). That said, until more of our favourite iOS music apps manage to adopt Ableton LINK, I think lots of iOS musicians would like to use LINK to MIDI in just that role. Yes, there may well be some apps that don’t want to play ball but I’m happy to report that there are also some (many?) that do…. and as LINK to MIDI is free… well, that strikes me as a pretty good deal.
I don’t know about you but I regularly find myself surprised at the generosity of the iOS music app developer community. If anyone thinks that there are development teams driving Ferraris and lounging beside some Hollywood pool surrounded by bikini-clad groupies…. well, you’re mistaken; I think the economics of music app development are likely to be borderline for many developers at present. In that context, that a developer offers us something useful (even if niche) for free is rather impressive.
LINK to MIDI may not solve all your app syncing problems but hats off to Alexandernaut for offering us users something useful for absolutely no cost at all. I sincerely hope that the karma is returned to you in other suitable ways….
LINK To MIDI