Triggering slices with midi notes?

I’ve followed the posts (thanks to you guys for the pointers) using Max for Live and it is working.

A lighter version (without Ableton/Max) should be doable as well. As long as a delay is inserted between setting the slice CC and playing the chromatic note, this seems to work fine (~20ms).

Here’s the Max device for Ableton 9:

http://www.elektronauts.com/files/download/55

(v0.2 interface change and overhaul)

INSTRUCTIONS:

IN ABLETON:
Drop this onto a MIDI track in Ableton.
Make the IO (ins/outs) visible on the mixer.
Select your MIDI controller as the Ableton track’s In.
Set the MIDI out to wherever the OT is plugged in.
Set the track’s MIDI out channel to your OT auto channel.
Highlight Monitor “In”
Highlight the Track Activator

ON OCTATRACK:

Turn on “Audio CC” under project>MIDI>control.
Select an OT track with a sliced and linear locked sample on it.
You can be in play, stopped, paused, grid, or live record mode, and any trigger mode.

USAGE:

On your MIDI controller note 36 should play slice 1 of the active track.
Change it with the “Basenote” parameter. Slices are now on consecutive notes.

Slicemode can be deactivated to use regular OT MIDI.

Increase the “Delay” parameter if notes ever play the wrong slices.

5 Likes

Please Elektron, implement a better way to do this!

I’m currently using the MIDI Designer iPad app to try to get this to work. Very close - sending both the note on and CC messages fine - but I’m having trouble getting them to send in the right order. Supposedly I have it set up right in MIDI Designer and the CC message is sending first, but the Octatrack is responding as if the note on is coming first. Very frustrating…I’ll try again tomorrow to try to work this out.

If anyone has any iPad solutions to getting a 8x8 grid triggering slices, let me know!

Hi All,

I haven’t looked too carefully, but this is possible with the OT Lemur template. I’ve used it to trigger slices. It’s not the ideal interface at all, but it proves that remote control of slices is possible via some kind of programming. It wouldn’t be too hard to reverse engineer from the template.

1 Like

Could you pls post a link to the template you’re referring to? Thx!

fwiw: check out my post here

1 Like

[quote="“avantronica”"]

fwiw: check out my post here [/quote]
Yes, this is what I’ve found too. That is the reason for the delay parameter in richiegusto’s Ableton solution at the end of the previous page.

The OT will not properly trigger the slice without sufficient lag between the CC command and the note. If you try to do it instantaneously, sometimes the slice will change from its previous value but it almost never hits the right slice for me, as though there’s a “glide” between the slices.

And I don’t know about you guys but I absolutely loathe this amount of latency. Especially when it comes to drums, which is what I’m doing a good 85% of the time when you work with slices/chains in this manner.

Interestingly, you can lock/modulate the start parameter to your heart’s content, at 2x speed at 300 BPM if you please, without this odd behavior. There seems to be something funky about the way the OT responds to MIDI messages, or maybe just this one in particular.

1 Like

interesting… that seems a lot more responsive… 20 vs 60 ms, i should try it out in lemur to compare - i’m also wondering whether other cc control is this delayed, as it may not be so evident

I’ve been experimenting with other CCs lately and this problem doesn’t seem to affect any I’ve worked with so far. There’s something different about slices. My guess is that this relates to the caveat mentioned in the manual that LFOs don’t work with start time when using static samples. There may be something in the slice handling code that throttles start point modulation (for both flex & static) in an attempt to prevent the CF reader from changing addresses too fast for static tracks.

Thanks avantronica, good to know that someone else has run into the same issue.

And license, interesting idea, but it doesn’t seem to be that the OT is throttling start point modulation. You can modulate start point as fast as you want even with static tracks, and you’ll just get glitchy playback. On a flex track, you can trigger all slices immediately if you play them with the OT’s keys. The problem seems to only occur with incoming MIDI messages.

1 Like

Yes, this is all true. I didn’t explain that well. I mean that it seems to throttle the start point control from CC 17, like there’s a slew limiting on just that particular controller. Static tracks not being able to read from the card fast enough for proper start point modulation is the only purpose I could think of for this behavior.

Could you pls post a link to the template you’re referring to? Thx![/quote]
https://liine.net/en/community/user-library/view/291/

2 Likes

interesting because i was sure i had managed to trigger slices with that template…but when i tried again, all i could do was select them. i strapped a midi monitor across the output and there was no trigger note going out, only the cc17 for selection.

are you absolutely sure you were able to trigger them rather than just have the OT sequencer triggering the slice you were selecting ?

I just got a response to my support request about the slicing problem. Here’s what Elektron said:

The CC messages and the Midi Note messages are processed by different parts of the system where the MIDI Note has a priority. The best solution would
be to be able to trigger the Slices directly from MIDI Notes since there
can be a difference in delay of the system handling CC depending on the
load of the machine. I have forwarded this request to the developers but I
can not promise anything.

So they’re aware of the issue, but no promises about a solution. It’s a pretty significant issue for a slicing sampler, and it seems to be feasible to fix it, so I have some hope…maybe if some of you chime in to support they’ll recognize the desire for this.

What no one seems to have talked about is that slices require a single value: only one slice can be played at a time per track. So why would you transfer the current , well-adapted “monophonic” slice CC system to midi notes, which are set up for polyphonic applications? :confused:
Also, imagine you have your slices laid out on pads, what happens if you hit 2 pads simultaneously? If 4 or 12? Which slice gets played? Will the octatrack crash, or just play the last value?
Go on and convince me that this would not be a problem…

1 Like

Not sure what you’re getting at here. The problem is that you can’t trigger slices consistently from an external controller because of the way the OT processes CC messages.

No one is suggesting that the Octatrack can/should play polyphonically. Using MIDI notes doesn’t imply polyphony; you can trigger a monosynth with a polyphonic keyboard just fine.

And finally, there’s is no way to play 2 pads simultaneously via MIDI, as it transmits messages serially. There’s always a last note to play, and that’s what the Octatrack will play when triggered. No worries about crashing.

1 Like

I set up lemur to play rather than just select slices. However, that workaround is not suitable for drums, just pads or atmo type sounds, due to latency to be set up to make it work.

For me, that’s the one and only feature that is really missing in the OT rather than being a nice extension for the future. I can’t believe that it’s still not implemented! Even the A4 can be set up to trigger drum kits from externally.

@MichaelHo: many synths are monophonic and ir still ‘makes sense’ to play them via a keyboard. It just needs a priotization rule inside the OT as is already applied when using slot/slices modes.

2 Likes

It’s nice to see that they are open to looking into it.

jamrod

Not sure what you’re getting at here. The problem is that you can’t trigger slices consistently from an external controller because of the way the OT processes CC messages.

Looking at the OT MIDI reference chart, there still is some free space for more midi note commands in the lowest two octaves, giving you a total of 24 possible states. Good luck with controlling the current OT 64 slice system with only two octaves. Ok, something using an octal system might work…
I hope i’m wrong but, i fear that there would be a trade-off for other OT functionality.

jamrod

No one is suggesting that the Octatrack can/should play polyphonically. Using MIDI notes doesn’t imply polyphony; you can trigger a monosynth with a polyphonic keyboard just fine.

And finally, there’s is no way to play 2 pads simultaneously via MIDI, as it transmits messages serially. There’s always a last note to play, and that’s what the Octatrack will play when triggered. No worries about crashing.

Analog monophonic synths are constrained to play the note you pressed last by their physical construction. Digital ones by their processing architecture. OT’s processing might not behave exactly like a monosynth, because it would first have to be programmed to behave that way – for example, to exclusively respond to the last played note, etc. If you look at OT’s sample trig implementation, you will see that a new note-on does not necessarily imply a note-off for the previous note, as you can have two samples play simultaneously.

About MIDI and seriality, you are simplifying too much. remember, you might be holding the pads down. How can you be sure you won’t be pressing two pads simultaneously in a live situation at some point? What will your Note Offs be doing then? Strictly speaking, multiple note values will be active simultaneously, the question is, what happens when OT is supposed play a new slice but the previous one can’t switch off yet, because its pad is still being pressed? A monosynth responds only to the last note on, because it is designed to. Have you verified how multiple simultaneous message values affect the OT? OT won’t necessarily crash, but it might not behave exactly the way we assume it should, just because we know a midi keyboard works with a midified analog monosynth… Again, i might simply be wrong, and elektron find a way to make it work. Or somebody here writes a low-latency external hack.

Actually, come back later, i will have a look at it.

I very much like richiegusto’s solution.

Here is a lighter one, with less latency, and not tied to a laptop (although you can run it on OSX/Win/Linux and more). It’s in Pd, not maxforlive. I haven’t bothered with a GUI yet, so you will have to make adjustments within the Pd patch itself, for now.

http://www.elektronauts.com/files/download/65

You can load it straight into your phone (MobMuPlat or similar), and with a fast MIDI interface, use it almost latency free (<10ms). You could script this in lemur, as undoubtedly someone already has (but with latency?). In any case, i don’t feel like making a free patch for a paid platform if you can have it on a free one.

It’s currently set up on MIDI channel 1, you can change that in the Pd patch: [ctlout 17 x], [noteout x], and clone the sub-patch to multiple instances, to control multliple OT audio tracks.

It only responds to notes with a single preset velocity, (currently: 80), because of a variation of the Note Off problem i mentioned above. (Specifically: incoming midi notes to Pd cause double bangs, which would result in the OT responding to the last Note Off instead of the last Note On if left unfiltered, so no note would be triggered in the OT) You can change the velocity value to something different inside the Pd patch – just change the [sel] argument (MPD/MPC pads at full velocity are 127?).

I currently use a delay of 1ms for the note bang, and it works, but if you run into problems, increase the argument in the [delay] object. This is equivalent to richiegusto’s “Delay” parameter.
(Note: this is very dependent on your OS and MIDI interface)

You still have to set up your pads: i.e. {C-2, D-2, E-2, F#-2, G#-2, …} to as to trigger the appropriate CC values: {0, 2, 4, 6, 8, …} Sorry, i’m not giving you any basenote option here, because configurable MIDI controllers wont need them, and you might want to assign your pads to slices in a specific order.

2 Likes

[i]license

The OT will not properly trigger the slice without sufficient lag between the CC command and the note.[/i]

Ok, i can verify this now, for ascending CC17 values. There is no lag for descending values.

Of course it still defeats the purpose of having a low latency external solution. You will always have the internal CC lag in OT to contend with.

1 Like