Boss Level Music wrote:You've confirmed my assumption, and were absolutely correct. I still find it odd that adding a breakpoint is necessary, but that does the trick. I guess it's something to do with the whole "relative value" of clip envelopes, of which I've still not reached a complete understanding.
That's another thing entirely, which I'll summarize here.
For automatable parameters in Live (virtual knobs, sliders and such), it's possible to record automations in the Arrangement view, independent of any clips. These automations specify the position of the parameter over time. If there's no automation, then the paramter stays where it is. Simple enough.
However, you can also have automations in clip envelopes. Clip envelopes like that specify the effective position of the parameter
as a percentage of the parameter's current value at that point. So if you've got a knob turned halfway up, then you can use a clip envelope to mess with it: clip envelope 100% means "use the parameter where it's set (i.e. halfway up)," 50% means "make the parameter half the value of what it's set to (i.e. 1/4 of the way up, in our example)". Clip envelopes cannot make a parameter act higher than what the knob is set to.
This is different from envelopes such as pitchbend, or MIDI CC envelopes - in this case, it's not automating a paramter, it's sending MIDI data down the chain.
Boss Level Music wrote:I suppose it's time for me to learn a little more about how MIDI messages work.
This is always a good idea. I can't find the MIDI spec online anymore, but
here's a summary that seems to get the right idea.
Boss Level Music wrote:I'm still confused about how adding a single breakpoint, which can be anywhere in the clip, tells a "relative value" control to return to center immediately, while omitting the breakpoint causes the clip to act like there is no modulation. It seems like the breakpoint acts as a kind of notifier that says to Live "hey, pay attention to this".
Actually, every single change in your pitchbend envelope acts like such a notifier. You need that notification to do anything. No envelope points, no notification - hence, omitting that breakpoint means "keep doing what you're doing" - and if the last thing it was told to do is to hold the pitchbend somewhere, then it'll keep holding it there.
It's analagous to a MIDI keyboard. As far as the synth can tell, you've moved the pitchbend knob somewhere, and then never let go. If you had let it go, it would be getting a message about the knob's new position. The pitchbend knob on a keyboard only sends information when it changes position. The information it sends is "here is my new position," not "I have moved this much from my previous position." There is nothing relative about pitchbend messages.
Boss Level Music wrote:And about the "relative" part. If for instance, I play a clip with a pitch bend modulation equivalent to an octave. Half way through the first clip I launch a second clip with a pitch bend value of zero. Am I mistaken thinking that modulating the first clip by a "relative value" of zero mean no change at all?
I'm assuming that by zero you mean center.
If your second clip
specifies a new pitch bend value of zero (i.e. there's an explicit 0 message at the beginning, not an empty pitchbend envelope) then your synth should immediately cease bending notes - the pitchbend is now set to zero.
It's not an offset, it's an absolute position.
Boss Level Music wrote:Am I simply overthinking all of this?
Should I just shut up and make some damn music?
No, I think it's good to be asking these things - I think it's important to learn your tools. I find that DAW software like Live actually makes it harder to learn, because things like MIDI concepts are hidden behind nice menus and visualizations. Which is nice, but it's hard to see what's going on internally unless you've learned it somewhere else.
Definitely go make some music - use what you've learned to give you more control :) And if you don't know how something works, and can't figure it out, just ask the question online, make a copy of your file, and move on. See if you can come up with a clever hack to do what you want to do in the meantime.
Hopefully this all made sense! Let me know if you need anything clarified.