Music Player Network

Previous Thread
Next Thread
Print Thread
Ableton Link: What it is, how it works, why it matters #3004294 08/21/19 03:46 AM
Joined: Jun 2019
Posts: 177
Dr Mike Metlay Offline OP
Senior Member
OP Offline
Senior Member
Joined: Jun 2019
Posts: 177
Ableton Link is a passion of mine; I consider it the most important advancement in MIDI since the invention of the spec 37 years ago, and it's one of a very few technologies that I actively evangelize without compensation (yeah, I wish Ableton would hire me, but hey, life...).

This is an edited and expanded repost of an answer I provided someone in another thread, made more general. I am putting it here to invite conversation, questions, and explanations. It's long blah , but hopefully useful to folks who want to learn more about Link.

THE PROBLEM WITH MIDI SYNC:

From the very beginning, MIDI was designed by computer programmers for the purposes of communication between computers. (Which makes sense, as that's pretty much what most synthesizers are under the hood... at least the parts that do MIDI.)

The basic idea was simple: connect a cable from this synth to that one. Play a note on this one, that one plays the same note. clap

From there, MIDI expanded to do other things, like change programs remotely, send control data from a sequencer to a synth or two or three or sixteen, store program data, and so on. Part of this was a protocol for sync between devices, with commands like Start, Stop, Continue, and a basic 24 pulses per quarter note clock signal. There were a few other commands, but that was the basic idea.

What's important here is that in 1982, microcomputers were in their infancy, and protocols to get them from blowing their own brains out were pretty tight. To make a sync network like this work, one MIDI device had to be the Master, and all the others had to be Slaves. The Master set the tempo, started and stopped, and the Slaves followed along.

Even something that simple can be screwed up in all kinds of fascinating ways. Some devices stop sending clock pulses when you hit the Stop button, while others keep sending pulses all the time, leading to interesting conflicts. But the real problem was twofold...

First of all, a Master and a bunch of Slaves makes a lot of sense for a computer network... less so for a band. The timing and progression of the music is rigidly controlled from one place. The machines might not care, but the people playing them will. This is a great solution for a sequencer running a stack of keyboards and drum machines. It really sucks for people with keyboards trying to jam together.

The second problem is that many arpeggiators and hardware sequencers that sync via MIDI are not smart about bar lines. MIDI Song Position Pointer (which IMSC was a later addition to MIDI in response to this) is by no means universally honored, and without it, the device doesn't know precisely where to start and stop, even though it will keep perfect sync once it does.

This leads to the maddening result of two arpeggiators being started just a few clock pulses apart and staying in perfect sync, so they never line up unless you retrigger one or the other and get lucky. In scientific terms, we say that the alignment has high precision (the two devices remain locked in tight sync) but terrible accuracy (they are out of whack and stay that way). Think of a very tight cluster of gunshots in a target... but that tight cluster is several inches off the bullseye.

Fixing this is a much trickier proposition than just getting things to sync. Every machine will respond differently to, say, the presence or absence of MIDI Start, Stop, and Continue commands, and whether or not there are Clock pulses present, and this is further complicated by each instrument's built-in arpeggiator or sequencer sync options (key sync, etc). Add to this the problem of multiple people triggering these arpeggiators and sequencers in real time in a band situation, where mere time delay across a stage coupled with slow reflexes can result in massively misaligned pattern playback, and you have a recipe for disaster.

THE BASIC CONCEPT:

You have to hand it to the team at Ableton that came up with Link in 2016(ish). They were computer programmers, yes, but they were also live musicians who played acoustic instruments in jam sessions.

They started from the basic principles of musicians jamming together: each person listens for the downbeat, and comes in (or doesn't) when they feel like it. If someone changes the tempo, picking it up for more energy or laying back, the players don't consult metronomes or stopwatches... they listen and they adjust to match the new tempo without any fuss. If there's a leader in the jam, they lead by mutual agreement, not because they have an iron grip on everything. People playing along have the option to jump in or lay out, to change the feel, and this is all very transparent and natural.

Well, it is for human beings. Computers need to be taught how to work this way, and fortunately, the tech of 2016 is way more amenable to this than the tech of 1983. Computers are faster and smarter, they can analyze data streams quickly and do more complicated things with them, and they're not limited to a half-duplex 5-pin DIN cable running at 31.25 kilobaud -- they can have timestamped events as part of a really fast high-density MIDI data stream that runs over a USB or Thunderbolt cable... or, more impressively, over no cable at all, thanks to Wi-Fi.

So! We pack a bunch of smarts under the hood, expose only the critical bits to the players, and that's Link.

HOW IT WORKS:

When you start up your apps or whatever, each device with Link capability looks for a network, joins it automatically, and begins to send and receive data... but the messages are deliberately very limited: "Where's the downbeat?" and "How fast are we going?". That's all. The common way to do this is over a Wi-Fi network, because most of today's devices can pull high-resolution timing data from wireless without any effort. Wired networks are also feasible, and there are even devices that convert Link to basic MIDI messages so your older gear can (partly) get in on the action.

There is no "Master Clock" anywhere in the network, and any device can change the tempo at will. Rather than locking everything down, Link assumes that the people playing together are mature sensible human beings, and won't get into a turf war over tempo... instead, they'll nudge it up or down to suit a track if appropriate.

So what's this like in practice? Check the next post!


Dr. Mike Metlay (PhD in nuclear physics, whoop de doo)
Wordsmith - Musician - Tech Freak - Amiable Zany
Everyone on this forum is a friend I haven't met yet
-- except for Bryce, who's, well, YOU know.
Re: Ableton Link: What it is, how it works, why it matters [Re: Dr Mike Metlay] #3004298 08/21/19 04:13 AM
Joined: Jun 2019
Posts: 177
Dr Mike Metlay Offline OP
Senior Member
OP Offline
Senior Member
Joined: Jun 2019
Posts: 177
Here's how a sample Link jam session might work:

Alice, Bob, and Carla are sitting around a room at Alice's house, playing with music apps on their devices, and Alice suggests that they jam. Before they start, they agree on the stuff most musicians talk about before they jam: what kind of feel, maybe a key and mode, a chord progression, and a rough tempo. They hook up to the mixer that Alice (being a musician) keeps in her living room. Bob asks if he can use Bluetooth audio. Carla tells Bob that he's a numbnut -- Bluetooth MIDI is fine where latency is concerned, but Bluetooth audio is agonizingly slow. (A topic for another thread!)

"Let's start with a 12-bar blues in A, say 96 bpm?" "Works for me." "Sure."

Alice says, "I got the drums," and fires up a drum machine app on her phone that has Link. She sets the tempo to 96 and starts the drum machine. The app instantly gets on the Wi-Fi network in her house and looks for other devices that are doing Link stuff. It doesn't see any, so it starts the Link session going. The drum machine is sending tempo data and a basic "1, 2, 3, 4, 1, 2, 3, 4" over the Wi-Fi.

Bob listens to the drums, sets up a synth patch on his iPad, and plays a chord on the arpeggiator. Nothing happens instantly... for a fraction of a second, the app hesitates as it reaches out on Alice's Wi-Fi network, and sees there's a Link session already going. It immediately sets the tempo to 96, and waits for the downbeat, which might (depending on the app) be graphically indicated on the iPad screen so Bob can see what's coming up... and on the One, in comes the arpeggio, bang on time and right in sync. Bob didn't have to do anything other than tell his app he was using Link before he started.

Carla's digging what she hears, and she fires up a sample player with some bass sounds she can arpeggiate. She hits Start, and her app, like Bob's, looks at the Wi-Fi, sees there's a session, sets its tempo, waits for the One, and comes in, bang on time and right in sync. Again, aside from telling her loop player that she was using Link when she started, Carla did nothing but start up.

Now the three are playing in sync and lined up. Bob stops playing to lay out for a bit. When he comes back in, the arpeggiator waits for the One before starting. Carla decides that 96 is too busy, so she hits the tempo button to slow things down to 92. All of the apps adjust on the fly in less than a beat, staying in sync. Bob nudges the tempo up to 94 and sticks his tongue out at Carla. Carla nudges it down to 93, evoking a laugh, but the apps never stutter, and Alice doesn't have to reset anything to follow along, her drum machine is doing it automatically.

Other people in the house, attracted by the music, walk in, hook up their devices to the mixer, fire up Link-enabled apps, and jump in. Doug sets his arpeggiator to triplets so he's creating polyrhythms against Bob, plays a chord, and comes in on the downbeat.

Carla listens to the result, decides she's going to lay out, and turns off her app, hitting the Stop button. Guess what? Her device (depending on how the app is programmed) either finishes out the bar before stopping, or stops instantly, and the rest of the jam is completely unaffected.

Ernie listens to the jam and realizes that it needs a rubato piano part. His sample player app has Link, but he turns off the arpeggiator and just plays; his musical decision isn't constrained by the network. What's more, his app is still tuned to the Link network, and even though his piano part is completely free, every note has an echo that's perfectly timed to the session!

Farah has a guitar with a delay pedal that has a MIDI clock input. She fires up her iPhone and runs the MIDI Link Sync app, plugging a Lightning MIDI interface into it and running a cable to the delay pedal. The iPhone app picks up the Link network, finds the tempo, and sends it to the pedal. The pedal doesn't know where the One is, but Farah does; she starts to play and the delay time is right where it should be.

Gina, who's an avant-gardist but not really a bad sort, turns on an app, deliberately turns off Link, and sets up a rhythm at 78. It clashes with the current jam, but she turns her level way down and messes with it until it's doing something really interesting against the jam before turning it back up. Again, this is a musical decision, not something dictated by the software.

Harry, who everybody loves but who's honestly a bit of a dick, fires up an app, starts it, and immediately sets the tempo to 156. Every device on the network immediately jumps to 156, causing a perfectly synchronized (except for Ernie) jump from blues to gabber. Much yelling at Harry ensues.

This is not the fault of Link; it's the fault of Harry, who as I mentioned before is a bit of a dick, and of the people in the jam, who didn't think to warn him that they didn't want to put up with his bullshit today. Someone grabs a slice of cold pizza and rubs it on Harry's face. While he yells that they're all assholes and don't appreciate real art, someone else takes his iPad away and turns off his app. The tempo is still at 156, but now Alice resets the tempo to 93 and the jam continues.

And so on. Notice that all the decisions are musical, not technical. Do I come in? Do I lay out? What do I play? Is the tempo right? How can I screw with these people? The nuts and bolts are being taken care of under the hood, and all the players do is play.

When you start to use Link, it's mindblowing: stuff that was horrific to get working reliably suddenly just works. Things sync up, loops and arpeggios come in on the One, if someone drops out nobody else is impacted... it really does turn jam sessions into jam sessions, and collaborative electronic music is suddenly A Thing in a way that it hasn't been in the past.

So how do I get in on the action, you might ask? Stay tuned!


Dr. Mike Metlay (PhD in nuclear physics, whoop de doo)
Wordsmith - Musician - Tech Freak - Amiable Zany
Everyone on this forum is a friend I haven't met yet
-- except for Bryce, who's, well, YOU know.
Re: Ableton Link: What it is, how it works, why it matters [Re: Dr Mike Metlay] #3004300 08/21/19 04:23 AM
Joined: Jun 2019
Posts: 177
Dr Mike Metlay Offline OP
Senior Member
OP Offline
Senior Member
Joined: Jun 2019
Posts: 177
HOW TO GET LINKED:

Link is not a separate product, it's a spec that coexists with MIDI. Each piece of hardware or software must be rewritten to accommodate it, so that if one software house screws it up, it doesn't hurt anyone else. You don't need special hardware for it and there's no dedicated "Link app" (that would defeat the purpose).

Ableton makes it available for free to anyone who'd like to implement it on their hardware or software, and lots and lots and LOTS of people have added it over the years since it was introduced.

There are hardware synths that are Link-aware, and plug-ins and virtual instruments on Windows, Mac, iOS, and Android that understand it. Ableton Live is NOT the only DAW to implement Link; others have done it and we keep hoping for more. The Ableton site doesn't have a fully comprehensive and up-to-date list of Link-enabled devices and apps; they're pretty conservative about adding items to the list, ostensibly to make sure things work right before promoting them, but the list is a very good place to start, with nearly 200 entries. Here's a link to the Link-Enabled Product List on Ableton.com.

I should note that by far the most common platform for Link support is iOS; about 3/4 of all the available Link-enabled products are iOS music apps, including a gazillion Audio Unit plug-ins, virtual instruments, and sequencers/DAWs. At a guess, I bet Link-friendly iOS apps alone probably outnumber the "official" Ableton list for all platforms combined by a fair margin.

Note that Link apps aren't perfect; they can misinterpret the spec and do stupid stuff. One of the most famous bugs took the developer a while to fix -- the app in question would broadcast its current tempo on the network before asking what the tempo was! "Huh. Every time I connect to a Link session, it's always at 120 BPM. What are the odds?" Meanwhile, everyone who had been at 90 BPM is cursing the newcomer, his app, and the developer...

As you can tell, I am a huge fan of Link and can tell all sorts of miracle-work stories surrounding it from the years I've put it to use, but I'll stop here. Let me know if you have further specific questions or comments and I'll be glad to help.

Last edited by Dr(!)Mike Metlay; 08/22/19 01:11 AM.

Dr. Mike Metlay (PhD in nuclear physics, whoop de doo)
Wordsmith - Musician - Tech Freak - Amiable Zany
Everyone on this forum is a friend I haven't met yet
-- except for Bryce, who's, well, YOU know.
Re: Ableton Link: What it is, how it works, why it matters [Re: Dr Mike Metlay] #3005003 08/26/19 12:00 AM
Joined: Nov 2001
Posts: 12,849
R
RABid Offline
10k Club
Offline
10k Club
R
Joined: Nov 2001
Posts: 12,849
Thanks for this. Around 1990 I considered myself a MIDI sequencing expert. Sequencing in DOS and playing in a band that consisted of a computer that covered drums, bass and extra keyboard parts. Now, I am sooooo behind the times. I have Ableton but have never used Ableton Link.

Re: Ableton Link: What it is, how it works, why it matters [Re: RABid] #3005032 08/26/19 02:02 AM
Joined: Jun 2019
Posts: 177
Dr Mike Metlay Offline OP
Senior Member
OP Offline
Senior Member
Joined: Jun 2019
Posts: 177
Originally Posted by RABid
Thanks for this. Around 1990 I considered myself a MIDI sequencing expert. Sequencing in DOS and playing in a band that consisted of a computer that covered drums, bass and extra keyboard parts. Now, I am sooooo behind the times. I have Ableton but have never used Ableton Link.


I can go through my entire early discography and point out track after track played live that were screwed up by this very issue, including some stuff that had to be jettisoned from live albums because over the course of several rehearsals and two live gigs, there was never one runthrough that worked right.

One more story: my friend Giles Reaves (engineer, software wonk, musician, all around cool human) was driving through town a couple of years ago and stopped to visit for a few days. He was fascinated by Link, and it was the thing that put him over the top to finally try an iPad for music. He knew I was a big advocate, and suggested that while he was in town, we do a quick gig at a local coffee house where we'd played before, and use Link as the basis of our jam.

So I stop by his hotel room with a pile of junk, set it up next to HIS pile of junk, and we take a few hours to sort out sound sources, a mix, monitoring, etc. There are four iOS devices (his and three of mine) and a laptop running Live for one track, and I've brought in a little wi-fi router just for Link data (WPA2 network so you need a password, but it's not connected to the Internet, it's just a local wi fi "cloud"). By the time we're all set up, it's nearly time for dinner break.

Giles says, "Well, we've gotten everything working but Link, but after dinner we'll have plenty of time to debug the network and figure out everything." I say, "Are you on the little network?" He says, "Yeah, but --" and hits a chord on his iPad. I hit a chord on mine, and the two arpeggiators are instantly lined up perfectly. I start a drum machine, and THAT'S lined up perfectly. He looks at me, I look at him, and we both just burst out laughing.

Somewhere I have a videotape of a session I did in 1992 where we literally spent five DAYS trying to get MIDI sync working, and it never did... and our setup was Linked and running in under 15 seconds. I'm telling ya, man...!

mike


Dr. Mike Metlay (PhD in nuclear physics, whoop de doo)
Wordsmith - Musician - Tech Freak - Amiable Zany
Everyone on this forum is a friend I haven't met yet
-- except for Bryce, who's, well, YOU know.
Re: Ableton Link: What it is, how it works, why it matters [Re: Dr Mike Metlay] #3005283 08/27/19 01:18 PM
Joined: Nov 2001
Posts: 12,849
R
RABid Offline
10k Club
Offline
10k Club
R
Joined: Nov 2001
Posts: 12,849
I was using a TX7 connected to the computer for bass parts. After sequencing a song I noticed an odd pop in the bass line. Turns out I had an extra 16th note that was messing with the program. It did not throw the timing off, it just screwed up the adjacent note. After some experimentation I was able to program some really nice slap bass lines using glitches to create pops and slaps. It worked really well for a couple of years. Then the bandmate that owned the computer and software did a bunch of upgrades to the hardware and the MIDI sequencing software. The useful glitches then turned into timing mistakes and it all had to be cleaned up. razz

Re: Ableton Link: What it is, how it works, why it matters [Re: RABid] #3005410 08/27/19 10:22 PM
Joined: Jun 2019
Posts: 177
Dr Mike Metlay Offline OP
Senior Member
OP Offline
Senior Member
Joined: Jun 2019
Posts: 177
Originally Posted by RABid
I was using a TX7 connected to the computer for bass parts. After sequencing a song I noticed an odd pop in the bass line. Turns out I had an extra 16th note that was messing with the program. It did not throw the timing off, it just screwed up the adjacent note. After some experimentation I was able to program some really nice slap bass lines using glitches to create pops and slaps. It worked really well for a couple of years. Then the bandmate that owned the computer and software did a bunch of upgrades to the hardware and the MIDI sequencing software. The useful glitches then turned into timing mistakes and it all had to be cleaned up. razz

Ooooh I hate when that happens!


Dr. Mike Metlay (PhD in nuclear physics, whoop de doo)
Wordsmith - Musician - Tech Freak - Amiable Zany
Everyone on this forum is a friend I haven't met yet
-- except for Bryce, who's, well, YOU know.
Re: Ableton Link: What it is, how it works, why it matters [Re: Dr Mike Metlay] #3006070 09/02/19 12:52 AM
Joined: Jan 2001
Posts: 888
analogman1 Offline
Gold Member
Offline
Gold Member
Joined: Jan 2001
Posts: 888
Thanks for the info and clarification...I will start to incorporate Ableton Link into my workflow...


Tom
Nord Electro 5D, Yamaha upright piano, numerous plug-ins
Re: Ableton Link: What it is, how it works, why it matters [Re: Dr Mike Metlay] #3008252 09/16/19 02:50 PM
Joined: Jun 2019
Posts: 177
Dr Mike Metlay Offline OP
Senior Member
OP Offline
Senior Member
Joined: Jun 2019
Posts: 177
I just came back from KnobCon, where I purchased the Missing Link by Circuit Happy. It's a dedicated Wi-Fi router with I/O that can handle (directly or indirectly) USB, MIDI, DIN sync, and CV/Gate. It's designed to be a portable solution for adding Link to any rig, and I can't wait to try it out.

mike


Dr. Mike Metlay (PhD in nuclear physics, whoop de doo)
Wordsmith - Musician - Tech Freak - Amiable Zany
Everyone on this forum is a friend I haven't met yet
-- except for Bryce, who's, well, YOU know.

Powered by UBB.threads™ PHP Forum Software 7.7.3