Slurring is conventionally archieved by making notes overlap at different points in time. In the case where the pitch changes between notes, the slur continues playing the sound and only changes the pitch. Portamento can be added to the slur to make the pitch glide through time from one note's pitch to the other note's pitch. A slur between two notes of the same pitch results in what Wikipedia refers to as a Tie, which is nothing else as a replacement of the first note's remaining time by the second note's length, therefore removing the note-off message of the first note and the note-on message of the second note.
Roland's TB-303, as well as Propellerhead's Rebirth, label slurring "Slide". Seq-303, an old Windows MIDI Sequencer labels it "Glide". Kore2's Step Sequencer labels it "Tie".
Seq-303 and Kore2 most probably extend the note-off of the previous note for a very short time, so that the following note first get's triggered, so that this second note-on request is sent to the monophonic instrument while it is still playing the previous note which still has not been explicitly turned off. The instrument then knows that it's supposed to perform a slur. Should the first note not be turned off before the second one is turned off, the instrument usually slurs back to the first note.
Take a look at the music notation in the image below, remarked with "clip 1" and "clip 2". As one can see, the slur embraces both clips.
The problem is that Live, as soon as a clip or a loop arrives at the it's end, forces a note-off to whichever note wants to continue playing after the clips or loops end. This will always result in the first note of the second clip or loop iteration to issue it's note-on event _after_ the last note of the prior clip or loop has been turned off, therefore _not_ allowing an instrument to play a slur between clips or loops, even if that last note is expected to end some time after the clip or loop finished playing.
Ideally, if a note is so long that it crosses the boundry of the clip's or loop's end, the clip performs what it's supposed to do next (either play another clip or loop the same clip again), while leaving that long note still playing until it finishes to consume it's remaining time or get's replaced by a same pitched note.
In that case, should the first note in the following clip be of another pitch, then the instrument will be able to perform a slug, and if the new note get's turned off and the synth can slug back to the prior note - the one still turned on from the previous clip or loop. Else, should, in the new clip or loop iteration, appear a note of the same pitch than the extended note of the last clip or loop, then then the remaining time of the note from the last clip or loop must be replaced with the duration of the new note.
This may seem like a small issue, it may sound like a whim from a 303 fan who get's obsessed when the last note in a sequence isn't able to slide into a new one, but the problem get's a lot more serious if you want to create an atmospheric sound of a 6 minute length, with occasional melodic pitch changes now and then, a sound continuously evolving from internal modulators, where it would be a dealbreaker to interrupt or reset any internal state of the instrument. It is possible to do this now, but only with workarounds which take minutes of your time and destroy inspiration upon implementation and leave you with limitations of what can be done and what not; while it could be so easy.
Come on, please. You've got a full blown sequencer there. An amazing one, which sadly lacks a seemingly small feature which sometimes could make a world of difference.
Uhm, no. This doesn't make any sense. Look how slugs are archived in the middle of a clip, you extend the length (delay the note-off) of the first note so that the note-off happens after the note-on from the second note.Amaury wrote:We could think of an improvement: if there is a note without a note start scheduled to play in the next clip (so, without a gad in between the two clips), just don't send a note OFF from the first clip.
The note-on occurs exactly on the beat quantization (let's say 1.2.1 for example), the note-off is delayed. There is no "note without a note start". Every note has to start somewhere.
Apply the mid clip behaviour to notes on a boundry: the note-off of the last note of the clip should be delayed into the following clip for as long as the remaining length of the note expects it. The remaining length is defined manually by the user by extending the length of the last note by a given amount beyond the clips end, just as in the middle of clip the user decides how long the first note will overlap the second one.
Another thing, if you don't send a note-off from the first clip, then after the first note in the second clip finishes the slug should fall back to the previous note, forever, since the note has not been turned off. But this behaviour differs from what to do when you encounter a same-pitched note in the next clip, where you must replace the remaining time to note-off by the duration of the new same-pitched note, without issuing a new note-on. It's actually impossible to play the same note twice on a piano without retriggering.
So keep in mind that there are two cases to be considered: 1) what to do when the following clip has a different-pitched note which overlaps with the extended note and 2) what to do when the following clip has a same-pitched note which overlaps with the extended note.
Yes, that's right, but this is a special case. It doesn't allow for pitch change between different clips. It messes up timing if the roll-in of the clip isn't of the same length as the loop. This is basically one of those workarounds which have limitations which usually introduce more problems and anxiety than the above mentioned solution would do (if that one would introduce any problems at all).Amuray wrote:But, for clip looping, if the first note starts before the loop start, and the last note ends after the loop end, and they are the same pitch, you should hear a continuous note. Isn't that right?
That case above really doesn't apply, since it is an ugly workaround and the recommended solution unter point 1) solves the issue. As to how the glide is performed it's up to the instrument, the only requirement for it is that a new note is additionally requested to play while one is already playing.Amuray wrote:Are you also saying that, in the above case [if the first note starts before the loop start, and the last note ends after the loop end], if the notes are not the same pitch, they should somehow glide if glide is ON?
As far as workarounds are concerned, here is a little thread discussing the issue:
Yes, with the exeption of what to do when the next clip or loop iteration contains a note of the same pitch which would overlap with the extended note. In that case the remaining length of the extended note would be replaced by the duration of the new same-pitched note.Amuray wrote:So, in then end, it all boils down to play the last note "as if it were not cut by the end of the clip", be it on loop jump or when playing the next clip? Or even when no next clip is playing?
In case of no following clip, yes, to continue to play the remaining length of the note would be a sensible thing to do; good observation.
It shouldn't be too hard to solve this problem.
Though there is one concern, and that is that care must be taken that old sets don't break. Maybe some composers have been relying on notes beeing cut off automatically at the end of a clip, so an option should be provided where one can flag a clip as "legato-friendly", so to say, which defaults to false, or s.th. like treating all sets created with a version of Live prior to the one supporting "legato-friendly" clip differently as new ones. I believe that an additional clickbox in the clip properties to enable that mode on demand would be the better alternative.
The original thread can be found in Google's cache: http://goo.gl/KxUaK