complex scene triggering in Ableton Live
November 27, 2009 10:06 PM Subscribe
I'm making a sort of a jukebox using Ableton Live, and I have some fairly complex and specific needs for launching scenes. I thought I had the entire thing solved a few months ago, but now I can't figure out what I was thinking!
Each song has several scenes, all the same length. Each scene is the same tune, but with increasingly complex orchestration.
This is the desired interaction: when you put in a coin, the first scene of a song starts playing. If you put in another coin while the song is still playing, it triggers the next scene in the song, unless you're already at the last scene, in which case it retriggers that scene. The effect is that the more money you put in, the fancier the song gets.
When the song ends (i.e. the longest clip in the current scene ends), prime the first scene of a different song but don't start playing it.
I built a little Arduino-based box that sends a midi note every time you put in a coin, so I'll be using that note to trigger the scene changes.
I thought I had figured out how to do this using only follow actions, but now I'm stuck- I'm not sure it's even possible. Please help me figure out how to get the effect I'm looking for. I can change the structure of the Live Set; I could use the python API or write a helper program in pure data or processing if I have to; the coin box could get smarter and send more complex messages.
Each song has several scenes, all the same length. Each scene is the same tune, but with increasingly complex orchestration.
This is the desired interaction: when you put in a coin, the first scene of a song starts playing. If you put in another coin while the song is still playing, it triggers the next scene in the song, unless you're already at the last scene, in which case it retriggers that scene. The effect is that the more money you put in, the fancier the song gets.
When the song ends (i.e. the longest clip in the current scene ends), prime the first scene of a different song but don't start playing it.
I built a little Arduino-based box that sends a midi note every time you put in a coin, so I'll be using that note to trigger the scene changes.
I thought I had figured out how to do this using only follow actions, but now I'm stuck- I'm not sure it's even possible. Please help me figure out how to get the effect I'm looking for. I can change the structure of the Live Set; I could use the python API or write a helper program in pure data or processing if I have to; the coin box could get smarter and send more complex messages.
Response by poster: Thanks! The single follow action plus blank scene are really good advice. Unfortunately, though, this doesn't quite meet all my requirements, unless I tried the wrong button.
I didn't see "move next scene" exactly, but I think you meant for me to use the "scene launch" button, which gets me very close to what I need, but not quite! Every time you trigger "scene launch," it plays the current scene and highlights the next one. Since I want the last scene of a song to keep playing to the end no matter how many coins you put in, I need to keep the highlight from advancing past that scene until the end of the clip.
I need something like a "before action" - whenever the last scene is triggered (which would move the highlight to the blank scene after it), the before action would trigger "scene up" to move the highlight back. Maybe if I map a note to "scene up", put that note in a clip, and then do some sort of complicated loopback so that the output of the control clip goes back to Live... hmmm. I could probably do that with MIDI Yoke, but it would be nice not to have to rely on external software.
posted by moonmilk at 8:06 AM on November 28, 2009
I didn't see "move next scene" exactly, but I think you meant for me to use the "scene launch" button, which gets me very close to what I need, but not quite! Every time you trigger "scene launch," it plays the current scene and highlights the next one. Since I want the last scene of a song to keep playing to the end no matter how many coins you put in, I need to keep the highlight from advancing past that scene until the end of the clip.
I need something like a "before action" - whenever the last scene is triggered (which would move the highlight to the blank scene after it), the before action would trigger "scene up" to move the highlight back. Maybe if I map a note to "scene up", put that note in a clip, and then do some sort of complicated loopback so that the output of the control clip goes back to Live... hmmm. I could probably do that with MIDI Yoke, but it would be nice not to have to rely on external software.
posted by moonmilk at 8:06 AM on November 28, 2009
Response by poster: Hmm, now that I've experimented some more, I think I must have misunderstood your suggestion, since triggering "scene launch" when the blank scene is highlighted wouldn't start the next song, so during a silent period, the first coin in wouldn't play anything.
Next to scene launch is scene down, which moves to the next scene but doesn't play it. I could have a coin send scene down followed by something that plays the current scene without advancing the highlight, though I'm not sure what that something would be.
A possible flaw with the follow action: it only applies to a single track, rather than the whole scene. So when the clip finishes playing and triggers next clip, the highlighted scene still doesn't change.
posted by moonmilk at 8:18 AM on November 28, 2009
Next to scene launch is scene down, which moves to the next scene but doesn't play it. I could have a coin send scene down followed by something that plays the current scene without advancing the highlight, though I'm not sure what that something would be.
A possible flaw with the follow action: it only applies to a single track, rather than the whole scene. So when the clip finishes playing and triggers next clip, the highlighted scene still doesn't change.
posted by moonmilk at 8:18 AM on November 28, 2009
You're right, it won't help, I overlooked the "keep playing until end" bit and I also forgot that "launch scene" moves one down. My advice was really bad, sorry!
At the moment I'm not sure this can be done without programming. However you are much more likely to get help in the Ableton forums I suppose.
posted by gmm at 9:40 AM on November 28, 2009
At the moment I'm not sure this can be done without programming. However you are much more likely to get help in the Ableton forums I suppose.
posted by gmm at 9:40 AM on November 28, 2009
This thread is closed to new comments.
Set up a silent, looping scene between each of your "songs".
Set up the midi message to trigger the "move next scene" button (only available in midi map mode).
The last scene in each "song", and ONLY those, should have a follow action; after the scene has played out, go to next scene (which is silent).
This way, as long as Live is playing, you need one simple, repeated midi message to move through the whole set, and the silent clips will play between songs, giving the illusion of "stopped music".
posted by gmm at 3:29 AM on November 28, 2009