Ableton-style grid launcher thoughts and prototype

edited September 4 in Feature Wish-lists

As I know an Ableton-style grid launcher is planned in future releases so I couldn't resist to brainstorm about such an interesting design challenge :)

I understand that by this time there should already be a clear idea of implementation, maybe even partially implemented. But I hope my thoughts can still be useful, save a few brain cycles or inspire @giku in some way.

Some of the ideas may be inspired by my extensive experience with Ableton Push, Synthstrom Deluge and Octatrack.

———

So before we approach any design task we should decompose what already exists:

  • A single track with a sequencer is basically the smallest entity in this case and may act as a clip in the future.
  • Current 16 «pads» are virtually a single-dimension grid already with a bunch of limitations.
  • Current patterns selector is what allows the user to progress in the track and and can be considered a precursor of grid rows.

Here are the limitations that user has with current setup as opposed to a a future grid view:

  • User can only launch the "full row" when transport is activated, meaning that all pads/clips follow the same sequencer and thus can't act as clips.
  • User can't launch different sequences from different patterns, being forced by UI to switch the whole pattern if he wants to progress in the track.
  • Current approach with sequencer length being shortened only using "Jump" step component may not be flexible enough for grid view. All sequencers may clearly be of different length.
  • Currently in every pattern user has the same module setup, so if he wants to have different samples triggered on every grid row, he will have to search for workarounds like using Sampler zones and triggering different samples using notes on each clip's sequencer.
  • There's already one grid view (full screen pattern editor) that may confuse the user and facilitate an error prone condition, when user doesn't know what grid view he's in.
  • Grid adds a dimension of complexity comparing to current state of the app so it may steepen the learning curve.
  • Pads light up to show they are triggered now. There is no indication of playback progress on the pad as pressing it sends the note, not launches the sequence.

Based on the above my thoughts on the implementation are the following:

  • Each track within a pattern should be able to launch separately from main sequencer (similar to disconnected sequencers on OT). This may require introducing a LAUNCH mode as an addition to TRIG mode.
  • Each "disconnected" track/sequencer has to have launch options such as launch/stop quantization to main sequencer, number of repeats, steps per beat and beats in pattern similar to patters settings currently. Defaults for track would follow the pattern settings, but can be adjusted.
  • Only one clip of the track can play at a time.
  • User should be able to launch the full row of clips as easy as he launches the patterns now. They are technically the same entity.
  • User should be able to have different track settings saved for every pattern. This resembles the most esoteric OT functionality called "parts" but can be done is a simpler, more straightforward way.
  • There should be clear visual difference between fullscreen pattern editor and clip grid. These modes should be mutually exclusive.
  • The grid view should either be a separate mode to keep current usage workflows valid or an organic extension of pads view.
  • We should keep in mind that grid view may be targeted at live performance, rather than composition, so design elements should be finger-friendly.

Comments

  • edited September 4

    Implementation example:

    • Below are some mockups I quickly composed based on my understanding of Drambo UI conventions. These can still be greatly optimized regarding space use and UX in general, but I tried to not change too many things at a first approach.
    • Smaller things like icons and buttons haven't been taken care of, this is just a mockup.

    ———

    • We begin with a standard UI in full screen pattern editor mode. Things to notice: 
      • There are now three icons on top right and the icon for the full screen pattern editor is slightly different now (vertical lines). The righmost icon is the one that will trigger the grid view.
      • Another thing that has appeared in the UI is the LAUNCH button right next to TRIG button.


    • Now let's check out this grid view, shall we?
    • Seems like not much has changed, only the pattern indicator/selector has appeared in front of the pads on the bottom left.


    • To see a better example of the actual change, let's add a second pattern by pressing "plus" on top.
    • Now there's a clear difference. Even though we can still only press pads to trigger sounds, there are two rows of pads corresponding to two patterns.


    • Let's get back to a single pattern and switch to that LAUNCH mode now.
    • Launch mode adds play buttons to pads. By default these slowly glow green to indicate they are armed to play. This means that when user will press the main play button, all of the armed tracks will start their sequencers.
    • Pressing on an armed pad will disarm the track, turning the play icon to pale blue. This way the user may select what sequences he wants to begin with. The difference with Mute is that pad launch is quantized to main sequencer (not instant unless set up otherwise) and tracks sequencer may be actually stopped even when the main sequencer is going.


    • Lets add more patterns, Intro, A1, A2 and Break and see what happens.
    • New patterns are added to the grid:


    • When we press global play button, all armed sequencers will begin playing showing their playback indicators.
    • You may notice, that one of the sequencers is of different length by a different pace of its progress indicator. This will be covered later.


    • The obvious thing now would be to press a clip on different pattern and see how it works.
    • You may notice on the illustration, that track 3 clip from the A1 pattern is now playing but also track 3 clip from A2 is armed. It will launch quantized to the sequencer (Actual quantization rules should be tweakable)


  • edited September 4
    • Now let's speak about the settings.
    • When in EDIT mode, clicking on a pad should evoke a menu that allows to set clip sequencer settings different from pattern settings.
    • There should be a way to revert to pattern settings, of course.
    • Additional options like "Play once" and "start/stop quantization" (not shown) should be available for every clip.


    • Speaking of patterns, they too need an additional setting, such as "Independent module settings", which should allow to have different settings of each module in the patterns (though same modules).
    • This is needed for the case, where on every pattern the same synth in a specific track may be set up differently. Without independent module settings, user would have to parameter lock every parameter, which sounds suboptimal.


    Final Thoughts:

    • Of course there are things that can be enhanced/optimized, but require additional changes to UI paradigms that may not be acceptable:
    • Empty pads are clearly just visual noise, and can be removed.


    • Full screen modes aren't really full screen now. It would make sense to make a button, that temporary removes the module rack, giving the full screen real estate to pads or launcher grid.
    • I actually see the modes switcher on top right with the following icons:
      • Show/hide modules rack
      • Show/hide full screen pattern editor
      • Show/hide full screen pads
      • Show/hide full screen launcher
    • In case none of the pad modes are active, modules show in "full screen racks" view.
    • In case user chooses to hide modules, full screen pad views actually take full screen and become convenient for finger drumming, pattern editing and launching clips.


  • As forum compresses the images, here's an archive with full-size ones.


  • edited September 4

    Probably very similar to what the boss has planned indeed.

  • edited September 4

    I guess so. My ideas aren't too novel :)

    I treat this as a brainstorm @giku may consider when working on this functionality. For me it was just a fun thing to think through.

    Regarding Bitwig and Ableton: well, everything has to start with something small, so at the very beginning yes, it will be simpler.

  • This is really good work. It amazes me that despite the maturity if iOS there isn't anything quite like Ableton available on an iPad.

  • edited September 4

    Indeed i hope it starts off as a manageable and simple framework in order to be implemented without confusing the audience and minimum 🐛 The current sequencer needs some fixing too.

    definitely for me the bitwig clip launcher is a brilliant implementation and a place for inspiration.

  • edited September 4

    @laikrodiz Wow, thanks for your effort, I'm gonna analyze this deeper and give more feedback soon.

    I already introduced my concept somewhere over here in the past, so the plan is:

    • Step = clip. Yes, if we imagine the whole song as a tape and zoom it out enough clip becomes a step (of course it will be wider, like in 8 steps pattern and its tint will be different).
    • This makes everything much simpler. We don't need to change screen estate, mess with pads add buttons, modes etc..
    • You edit clips just like steps. (They are steps!) Hold a step (clip) and tap on other to duplicate a clip. Transpose, shift, clear entire clips the same way as you edit steps. You may even select an area of clips. Holding step in edit mode previews a clip, just like with steps.

    As you noticed tracks may be hierarchical. For now its limited to one level, but it will be unlocked soon. This implies more sexy stuff :)

    • Main track owns its subtracks, so when you are on a clips level view, launching a clip on the main track launches its child clips on the same column. Clip on Main track is like a scene in Ableton Live
    • And here the fun starts. You can add subtracks to any track, so its clips are scenes for its substracks.


  • edited September 4

    You mentioned settings per clip. Its on the list as well.. Its called clip lock.

    You hold a clip and change a param.

    (all clips are visible as steps, so .. nothing new, you still hold a step and change param :) with sliding p-locks this creates a clips wide param value transition.

  • edited September 4

    Im not sure about the rest yet. Most probably just one button will be added: CLIPS. Holding CLIPS and tapping PLAY starts launch mode.

    All of this makes sense, when you work with MIDI controller. Assuming that steps are mappable,, everything just works with not so many controls. And UI - MIDI mapping is like 1:1. You use row of buttons to control clips, steps or even use it as a piano keyboard (depending on mode). Just like a groovebox (e.g. mc707). With properly implemented midi surfaces, you can put your iphone into your pocket :)

  • Just realized... as clip is a step, it may have its step components :) ... jump to other clip or conditional execution

  • @giku I love these ideas!

  • edited September 4

    @rs2000 Thanks! Looks like a 4-6 weeks of work. I hope it will be here before the end of the year.

  • edited September 4

    So a clip can be place in a step and play its full length before the sequence continues? If not then how will the step components trigger two parallel sequences which are independent from each other. Or do you mean clip will have its own step components? That would be the same as the giving it normal conditions/functions.

  • 👐 for clip locks!!!

  • Are you going to support ghost clips? So I can edit one clip and it updates elsewhere?

  • damn, some really good ideas brewing here!

  • ahh, starting to make some sense of all of this.

    I'm still fuzzy on the subracks thing. how is that different than clips launched in a scene, ableton style?

    I prefer the pyramid style to launching clips than ableton style. I've never used an OT or Deluge, so can't speak to that. On the Pyramid, when you are in a "scene", any clips you have selected and unmuted will play, no matter where they exist. I don't like the way ableton forces things to line up and drag and drop things in a spreadsheet style to play the way you want. That's about as fun as filling out tax forms.

    Select a scene or pattern you'd like to edit, tap on the clips you want to play in that scene, and you're good to go. Also, no fussing with the empty slots, endless copy/pasting of the same clips etc.

    I really like some of @laikrodiz ideas and mockups. Nice work!

    Clip Lock would be so sick. (sounds like a wrestling move, too 🦕)

  • Will you have the classical functions, this is the most important part of clips, drambo patterns sorely misses this. Bitwig has about 15 functions.

    also bitwig has an excellent way of showing a selection of midi presets when you open a new clip.

    perfect for when you want to just add a set of hats with specific pattern, no need to manually input.

    drambo will need midi file import/export.

    also scaling is used alot and each clip can have its own swing.

Sign In or Register to comment.