Split and loop: so complicated
- KVRist
- 160 posts since 9 Feb, 2016
I find the loop markers a very useful way to make short loops which can be easily repeated by extending the part length. I remember Reason 4 didn't have this ability and was totally frustrating for loops which had to be manually copied again and again. I expect Reason is much better now but that's what sold me Mulab 4 when I tried it out because it worked similarly to cubase which I had used in the 90's. Bravo to the loop markers and all their functionality (in my opinion).
Aka Midland Synthetics
-
- KVRer
- Topic Starter
- 16 posts since 2 Jan, 2019
Like I said, it's too complicated. I'm still waiting for a real advantage to such complexity. The "intro" argument is not so good, because by nature an intro is played once, so a separate sequence is enough.
Let me try to go the other way around and explain what I mean from scratch.
You put or record "boxes" on a track in the Composer, just like it is now. A box contains MIDI data in time (notes, CC, PC, etc.). It's called a SEQUENCE.
- CTRL-drag that box: you make a separate, identical copy with no live relation to the original.
- CTRL-ALT-drag it : you make an ALIAS. An identical copy which always changes when the original (MASTER) changes.
Whether it's a sequence or an alias, you can do everything that Mulab can just by moving the left and right edges of this box, and maybe one other gesture as cherry on the cake.
- Drag any edge inward, you focus on part of the sequence. If you do that with an alias, you've got your "shared sequence part".
- Drag any edge outward: you just extend the sequence or alias with empty time.
- CTRL-drag any edge outward: you loop (repeat) the sequence or alias as many times as you want.
- CTRL-ALT-drag any edge inward or outward: you scale (timestrech) the sequence or alias.
You can do all these things in any order on any "box". For example, if you drag inward the edges of an alias, then CTRL-drag its right (or left) edge, you now are looping a part of the master. Scale a chord that's too short then add a bar of silence afterward, then loop it. Etc.
The other gesture would be maybe ALT-drag directly in the middle of the box: it becomes a window over the data in it. Drag left-right to slide the underlying sequence/alias data in time, while the box remains in place.
I've had lots of experience with sequencer-type timeline programs, not only in audio but also video and 2D/3D animation, but please note that what I described here existed in Logic in the early 90s, except for the "Slide Events" which comes from Cubase now. This system is simple in all situations, and particulary adequate when you hit Record, start jamming for a few bars, Stop, then maybe quantize a bit, then chop the MIDI recording, move things about, scale, add silences, loop, all this with the few shortcuts above. the essential thing is that a Split does not do anything else except a hard Split. Whether you split a sequence or an alias, it becomes two SEQUENCES, the left one with the notes left of the split, the right one with the notes right of the split.
SEQUENCE, ALIAS, period. What can you do with current Mulab that you couldn't do with the simple system above?
(of course, I realize this would probably be a major overhaul, lots of work for a single person, and with Mulab 8 about to be released, maybe it's not the best time, but implemented one step at a time, I'm sure it would add great value to this great software.)
Let me try to go the other way around and explain what I mean from scratch.
You put or record "boxes" on a track in the Composer, just like it is now. A box contains MIDI data in time (notes, CC, PC, etc.). It's called a SEQUENCE.
- CTRL-drag that box: you make a separate, identical copy with no live relation to the original.
- CTRL-ALT-drag it : you make an ALIAS. An identical copy which always changes when the original (MASTER) changes.
Whether it's a sequence or an alias, you can do everything that Mulab can just by moving the left and right edges of this box, and maybe one other gesture as cherry on the cake.
- Drag any edge inward, you focus on part of the sequence. If you do that with an alias, you've got your "shared sequence part".
- Drag any edge outward: you just extend the sequence or alias with empty time.
- CTRL-drag any edge outward: you loop (repeat) the sequence or alias as many times as you want.
- CTRL-ALT-drag any edge inward or outward: you scale (timestrech) the sequence or alias.
You can do all these things in any order on any "box". For example, if you drag inward the edges of an alias, then CTRL-drag its right (or left) edge, you now are looping a part of the master. Scale a chord that's too short then add a bar of silence afterward, then loop it. Etc.
The other gesture would be maybe ALT-drag directly in the middle of the box: it becomes a window over the data in it. Drag left-right to slide the underlying sequence/alias data in time, while the box remains in place.
I've had lots of experience with sequencer-type timeline programs, not only in audio but also video and 2D/3D animation, but please note that what I described here existed in Logic in the early 90s, except for the "Slide Events" which comes from Cubase now. This system is simple in all situations, and particulary adequate when you hit Record, start jamming for a few bars, Stop, then maybe quantize a bit, then chop the MIDI recording, move things about, scale, add silences, loop, all this with the few shortcuts above. the essential thing is that a Split does not do anything else except a hard Split. Whether you split a sequence or an alias, it becomes two SEQUENCES, the left one with the notes left of the split, the right one with the notes right of the split.
SEQUENCE, ALIAS, period. What can you do with current Mulab that you couldn't do with the simple system above?
(of course, I realize this would probably be a major overhaul, lots of work for a single person, and with Mulab 8 about to be released, maybe it's not the best time, but implemented one step at a time, I'm sure it would add great value to this great software.)
- KVRist
- 160 posts since 9 Feb, 2016
I do not tend to use aliases in my sequences. I'm a habitual ctrl click dragger. I can see what you are saying about being able to slide the sequence in time like ripple editing in video editing which is obviously a useful tool for shifting timings. I tend to consolidate a part (which cements the loop into actual notes) and then shift the pattern for re-looping. We all work in different ways of course. My way of sequencing is most likely less technical than yours so I apologize if I haven't got a full understanding of your particular problem. I'll experiment with aliases later on to see how they behave. That's what makes music production so interesting. We all have different ways of achieving similar goals.
Aka Midland Synthetics
- KVRian
- 1441 posts since 4 Oct, 2012 from Utah
This problem is heavily debated here. One of the big points of Mulab is that the UI is not overly complicated, meaning there aren't many "zones" where dragging a clip does different things. On one hand this is inconvenient for people who want to do loops and inline editing in the composer (inline editing being another debated topic here). On the other hand, those of us who use high resolution screens don't have to worry about /where/ we click on the clip, because it always does the same action all along the edge. Instead, we use modifiers or deliberate re-making of loop zones.
This is the part where Mulab's design is debated. Mulab's design philosophy is to not overload a single action, meaning every action has one and only one purpose, not many. Many people see this as stifling creative ability, and others see it as simplifying the process so we don't have to memorize things like "bottom right corner to extend, center right to loop, top right to stretch". It's a UX (User experience) problem and no matter what, not every user will be happy. I've used both methods and I generally prefer Mulab because I'm less likely to make mistakes in the composer. Every action has to be deliberate, which fits my own composition style.
Honestly, it's just a UX problem. Some people prefer overloaded actions, others don't, and it's hard to strike that balance while maintaining a community and developing new features.
This is the part where Mulab's design is debated. Mulab's design philosophy is to not overload a single action, meaning every action has one and only one purpose, not many. Many people see this as stifling creative ability, and others see it as simplifying the process so we don't have to memorize things like "bottom right corner to extend, center right to loop, top right to stretch". It's a UX (User experience) problem and no matter what, not every user will be happy. I've used both methods and I generally prefer Mulab because I'm less likely to make mistakes in the composer. Every action has to be deliberate, which fits my own composition style.
Honestly, it's just a UX problem. Some people prefer overloaded actions, others don't, and it's hard to strike that balance while maintaining a community and developing new features.
My Setup.
Now goes by Eurydice(Izzy) - she/her
Now goes by Eurydice(Izzy) - she/her
- KVRist
- 109 posts since 24 Jul, 2018
Thank god (or Jo) for this UI
This is one of the biggest reasons i use Mulab !
Don´t touch it !
-
- KVRer
- Topic Starter
- 16 posts since 2 Jan, 2019
The system I described does NOT introduce any difference as to /where/ you click in the Composer. What you mention is the Cubase (and others) way, and I don't like it either.dakkra wrote: ↑Thu Jan 03, 2019 8:05 pm This problem is heavily debated here. One of the big points of Mulab is that the UI is not overly complicated, meaning there aren't many "zones" where dragging a clip does different things. On one hand this is inconvenient for people who want to do loops and inline editing in the composer (inline editing being another debated topic here). On the other hand, those of us who use high resolution screens don't have to worry about /where/ we click on the clip, because it always does the same action all along the edge. Instead, we use modifiers or deliberate re-making of loop zones.
This is the part where Mulab's design is debated. Mulab's design philosophy is to not overload a single action, meaning every action has one and only one purpose, not many. Many people see this as stifling creative ability, and others see it as simplifying the process so we don't have to memorize things like "bottom right corner to extend, center right to loop, top right to stretch". It's a UX (User experience) problem and no matter what, not every user will be happy. I've used both methods and I generally prefer Mulab because I'm less likely to make mistakes in the composer. Every action has to be deliberate, which fits my own composition style.
Honestly, it's just a UX problem. Some people prefer overloaded actions, others don't, and it's hard to strike that balance while maintaining a community and developing new features.
It also doesn't mean that the current way to do things should be abandoned, except for the loop markers. It only makes things SIMPLER. Let's see what it takes now to to scale a MIDI part/sequence/clip/whatever in the Composer:
1. Right-click on the clip
2. Click on "Functions" from the context menu
3. Select "Change Loop Length" from the sub-menu
4. Change the loop length. You can use the scroll wheel for that, but with your hirez monitor, the text is smaller than the edge of a clip, so you fumble with it until you decide to enter the new value from the keyboard, so you
5. Double-click in the value field
6. Type the new value, having to calculate if you want to match the position of another clip, and being careful with the Bars.Beats.Ticks format.
7. Click OK
8. Click OK again.
You can define a keyboard shortcut for "Change Loop Length", and that would cut the number of steps in half, but that's something you'd have to memorize too.
If you want to continue doing it this way, it's fine with me. For my part, I would prefer to do
1. CTRL-ALT-drag the edge of the clip.
Done.
- KVRAF
- 12735 posts since 24 Jun, 2008 from Europe
So by just dragging a part's edge inward and outward again you are changing the sequence it plays?! That's not what i would expect / like.TmTmClb wrote:Whether it's a sequence or an alias, you can do everything that Mulab can just by moving the left and right edges of this box, and maybe one other gesture as cherry on the cake.
- Drag any edge inward, you focus on part of the sequence. If you do that with an alias, you've got your "shared sequence part".
- Drag any edge outward: you just extend the sequence or alias with empty time.
And this would also mean that you can't do that on shared sequence parts.
I prefer it like it is now: The part length simply defines how long a sequence is played. That's a simple and straightforward concept. Make the part longer = play that sequence longer, make the part shorter = play that sequence shorter.CTRL-drag any edge outward: you loop (repeat) the sequence or alias as many times as you want.
M8 features quick & easy timestretching of sequence parts, very similar to this. ([Alt]+drag)CTRL-ALT-drag any edge inward or outward: you scale (timestrech) the sequence or alias.
To avoid confusion: I'm not rejecting your constructive criticism, but at this point i'm not (yet) convinced by your proposal.
- KVRAF
- 12735 posts since 24 Jun, 2008 from Europe
Wow, you really choose the most complicated way possible.TmTmClb wrote:Let's see what it takes now to to scale a MIDI part/sequence/clip/whatever in the Composer:
1. Right-click on the clip
2. Click on "Functions" from the context menu
3. Select "Change Loop Length" from the sub-menu
4. Change the loop length. You can use the scroll wheel for that, but with your hirez monitor, the text is smaller than the edge of a clip, so you fumble with it until you decide to enter the new value from the keyboard, so you
5. Double-click in the value field
6. Type the new value, having to calculate if you want to match the position of another clip, and being careful with the Bars.Beats.Ticks format.
7. Click OK
8. Click OK again.
I would do it like this, using M7 that is:
1. Make the sequence part as long as you want it to be.
2. Double-click that part.
3. Drag the loop end marker to where you want and choose "Stretch"
Done.
In M8 stretching a sequence part even is possible in 1 step.
- KVRAF
- 12735 posts since 24 Jun, 2008 from Europe
I have no idea what you mean here. Please elaborate and maybe include a screenshot.TmTmClb wrote:4. Change the loop length. You can use the scroll wheel for that, but with your hirez monitor, the text is smaller than the edge of a clip, so you fumble with it until you decide to enter the new value from the keyboard
- KVRAF
- 12735 posts since 24 Jun, 2008 from Europe
I'm not sure if i understand what you mean here. Please elaborate.TmTmClb wrote: 6. Type the new value, having to calculate if you want to match the position of another clip, and being careful with the Bars.Beats.Ticks format.
Note that if you change the sequence length by dragging the marker in the sequence editor you can perfectly see at what new time you put it.
-
- KVRer
- Topic Starter
- 16 posts since 2 Jan, 2019
The most important aspect of the system I described is that you stay all the time in the Composer to compose. That plus the one-drag gestures means you save a lot of clicks and time, but more importantly that you keep a constant overview of your arrangement. Going back and forth to the Sequence Editor makes you lose that global view. Even dual panel solutions make you lose it. If you do everything by dragging the edge of clips in the Composer, you always stay on the same grid and everything is there, clips timings in relation to each other, which is what arranging is all about... you keep spatial integrity throughout the process. You live in one single timeline/ruler/grid always at the same spot and resolution on your screen, and if you scroll or zoom, you do that with that one timeline only. Once you've tasted that... And you can do all your arranging with the mouse and keyboard modifiers, without ever using a menu, a dialog box, text entry, or anything else.
A further example: you have a part with a chord in the middle of it, and you want to stretch that chord to fit the length of some other part in your Composer. With the method I explained, you move both the left and right edges until they fit exactly the length of your chord, then CTRL-ALT-DRAG them to scale the chord, looking at the other clip you want to match, and the notes start and end exactly where you let go of the edges in the Composer.
I certainly know what it's like to get used to a way of doing things with software, and how difficult it can be to switch to another. The thing is, contrarily to what some people fear, what I'm proposing is much simpler, easier, faster, more pleasant, more intuitive!
No, you don't change anything, it works like in Mulab now. You just reveal more or less of the sequence, and you add empty time only when you drag beyond the notes. If you drag back in, you hide first the added empty time, then the adjacent notes, etc.mutools wrote: So by just dragging a part's edge inward and outward again you are changing the sequence it plays?!
It works exactly the same way with the system I described. You reveal or hide the beginning and/or end just as explained above.mutools wrote: I prefer it like it is now: The part length simply defines how long a sequence is played. That's a simple and straightforward concept. Make the part longer = play that sequence longer, make the part shorter = play that sequence shorter.
Great!mutools wrote: M8 features quick & easy timestretching of sequence parts, very similar to this. ([Alt]+drag)
Step 3 "where you want" doesn't work because the End Loop Marker position means nothing, it's just a stretcher. And the visual feedback only comes after you click "Stretch". It's trial and error with "Change Loop Length" too. Anyway, this is moot because of M8 Alt-drag clip stretch in the Composer.mutools wrote: I would do it like this, using M7 that is:
1. Make the sequence part as long as you want it to be.
2. Double-click that part.
3. Drag the loop end marker to where you want and choose "Stretch"
A further example: you have a part with a chord in the middle of it, and you want to stretch that chord to fit the length of some other part in your Composer. With the method I explained, you move both the left and right edges until they fit exactly the length of your chord, then CTRL-ALT-DRAG them to scale the chord, looking at the other clip you want to match, and the notes start and end exactly where you let go of the edges in the Composer.
I wrote that because "Dakkra" mentioned people being against the idea of having to watch /where/ they click on the edge of a clip (something I never proposed), especially those with hirez monitors. By the way, whatever your monitor resolution, if you can't work comfortably, scale the display... Anyway, if a clip is too small to easily click on top or bottom of its edge, then you'll certainly have problems scroll-wheeling the numbers in a text box. Also, if you double-click the Bars.Beats.Ticks text in the first "Change Loop Length" dialog box, you get a second dialog for text entry and need to close both with OK.mutools wrote: I have no idea what you mean here. Please elaborate and maybe include a screenshot.
If you mean the End Loop Marker: if you make the sequence shorter, you get loops in the Composer, and you have to drag the clip's right edge there too. Two gestures to do one thing.mutools wrote: Note that if you change the sequence length by dragging the marker in the sequence editor you can perfectly see at what new time you put it.
I certainly know what it's like to get used to a way of doing things with software, and how difficult it can be to switch to another. The thing is, contrarily to what some people fear, what I'm proposing is much simpler, easier, faster, more pleasant, more intuitive!
- KVRAF
- 12735 posts since 24 Jun, 2008 from Europe
If you have a 2 bar part playing a 2 bar shared sequence (thus used in other parts too) full of notes and you drag in the end by 1 bar, then drag out the end by 1 bar, the sequence now still is 2 bars but the last bar is empty and thus all other parts where this sequence is used will have suddenly and unexpectedly changed. Unless i'm missing something.TmTmClb wrote:No, you don't change anything, it works like in Mulab now. You just reveal more or less of the sequence, and you add empty time only when you drag beyond the notes.mutools wrote: So by just dragging a part's edge inward and outward again you are changing the sequence it plays?!
What do u mean with "It doesn't mean nothing" ?Step 3 "where you want" doesn't work because the End Loop Marker position means nothing, it's just a stretcher.mutools wrote: I would do it like this, using M7 that is:
1. Make the sequence part as long as you want it to be.
2. Double-click that part.
3. Drag the loop end marker to where you want and choose "Stretch"
Changing the loop end of a sequence has a lot of impact!
You can do that in M7 too: Drag the part's start to the start of the chord, drag the part's end to the end of the chord, then use the steps i listed to stretch a part. (in M8 that's 1 step).A further example: you have a part with a chord in the middle of it, and you want to stretch that chord to fit the length of some other part in your Composer. With the method I explained, you move both the left and right edges until they fit exactly the length of your chord, then CTRL-ALT-DRAG them to scale the chord, looking at the other clip you want to match, and the notes start and end exactly where you let go of the edges in the Composer.
So in fact this case is perfectly covered as you wish. (at least in M8)
If you mean the End Loop Marker: if you make the sequence shorter, you get loops in the Composer, and you have to drag the clip's right edge there too. Two gestures to do one thing.[/quote]mutools wrote: Note that if you change the sequence length by dragging the marker in the sequence editor you can perfectly see at what new time you put it.
Which has the advantage that you have control over each step. Not every user always want to stretch a part. Part length and sequence length are 2 different and useful properties so it's good to have good control over each of them.
If all this debate only is about stretching a sequence parts then i propose we pause this debate until you have played with M8.
Again, i'm open to workflow optimizations. But what you propose is not working on shared sequence parts, afais, cfr my reply above (other parts will unexpectedly change too). So lets first clear out that specific case.I certainly know what it's like to get used to a way of doing things with software, and how difficult it can be to switch to another. The thing is, contrarily to what some people fear, what I'm proposing is much simpler, easier, faster, more pleasant, more intuitive!
- KVRAF
- 12735 posts since 24 Jun, 2008 from Europe
PS:
(that's appart from the problem it would create when adding empty space to a shared sequence, cfr my previous reply)
That's how it works now.TmTmClb wrote:Drag any edge inward, you focus on part of the sequence.
Here we have a different view. In my view this action is simply the opposite of dragging any part edge inward.Drag any edge outward: you just extend the sequence or alias with empty time.
(that's appart from the problem it would create when adding empty space to a shared sequence, cfr my previous reply)
-
- KVRer
- Topic Starter
- 16 posts since 2 Jan, 2019
There's a misunderstanding here that I can't pinpoint. Maybe you still thinking in term of "part" makes you think that when I say "extend with empty time", I mean replace existing data with silence? that is not the case. If the Composer "box" is smaller than the underlying sequence, dragging outward first reveals the hidden data (and adds it to the playback), and when you drag past the last note, THEN you add empty time.
I couldn't understand what the problem was earlier, but I now can see this should not be allowed. Wanting to use a smaller part of a sequence in an alias is very useful, but to make the alias MORE than the original is absurd. Maybe aliases shouldn't be scalable either. If we'd extend or scale an alias, and later extend or scale the original, everything would blow up, including our brains. The smaller alias should definitely create smaller loops as well, though.
In Logic, if you resize an alias in any way, it resizes the original, so Mulab is already better in that regard. I'm really talking about UI and workflow, more than functionality.
I couldn't remember these details (my last Mac was 15 years ago), so I googled and found these crystal-clear webpages at Apple:
http://tinyurl.com/y8rphxpr
http://tinyurl.com/y985k3kw
Maybe there's a trial version, maybe you know someone who works professionally with Logic, I don't know... I'm not a Logic fanboy, but its Tracks Area UI is one of the best I've used, and Logic UI and design being also one of the most classy, I think the measures I'm suggesting would fit like a glove.
- KVRAF
- 12735 posts since 24 Jun, 2008 from Europe
Ok i'm trying to understand your view:TmTmClb wrote: There's a misunderstanding here that I can't pinpoint. Maybe you still thinking in term of "part" makes you think that when I say "extend with empty time", I mean replace existing data with silence? that is not the case. If the Composer "box" is smaller than the underlying sequence, dragging outward first reveals the hidden data (and adds it to the playback), and when you drag past the last note, THEN you add empty time.
Imagine a shared sequence part of 4 bars.
Then you drag the end to the left so it's 1 only bar, then you Ctrl+drag the end to the right so it loops for 4 bars. At this point i have this question: Is the underlying sequence data altered or not? If yes then this will unexpectedly change other parts too, which would not be good, imho.
Then you drag the end 1 bar to the left, so now it loops for 3 bars, now you drag the end 1 bar to the right again, then what should that last bar play?
But then if it would not be allowed this will lead to inconsistent behavior and i'm quite sure there will be users saying that that is inconsistent / complex behavior.I couldn't understand what the problem was earlier, but I now can see this should not be allowed. Wanting to use a smaller part of a sequence in an alias is very useful, but to make the alias MORE than the original is absurd.
In M8 even shared 'alias' sequence parts are stretchable! (yes, without changing the other related parts)Maybe aliases shouldn't be scalable either. If we'd extend or scale an alias, and later extend or scale the original, everything would blow up, including our brains. The smaller alias should definitely create smaller loops as well, though.
Unless i'm missing something i think what you are constructively critisizing the most is the scaling = stretching of sequence parts, right? In M7 that indeed takes a couple of steps. In M8 that's a single step.In Logic, if you resize an alias in any way, it resizes the original, so Mulab is already better in that regard. I'm really talking about UI and workflow, more than functionality.