In theory you should reset on Start msg. Not reset on Continue msg.

Midi clock is all the time regardless of transport control.

2 Likes

There is some fog for me on Norns and start stop functionality on certain apps. this is interesting. following now. also dig the app @mattbiddulph !!

2 Likes

@mattbiddulph

Took a look back at how these parameters were lagging and I don’t think it reflects what you’re saying about the parameter updating every clock beat. Def lags much longer than every beat when using arc. It may be a sensitivity issue as well? Seems to be all or nothing for parameters like beat start/end. Hard to tell if its sensitivity due to the lag time when turning the knob. It may just be catching up with itself.

Let me know if I can provide any further troubleshooting. Happy to help!

  • beat start/end
  • filter reso - arc sensitivity issue?
  • loop index

i’m not super familiar with midi mapping norns. would it be possible to use two launchpads to control the two voices like it was a grid?

I believe so, yes. Each parameter of each voice is broken out into its own Norns param, so you should be able to map each one separately to a CC on one of the launchpads. It was certainly working well with a single Launchpad before I added Grid support, as you can see from the very first video in this topic.

2 Likes

awesome, thanks! will keep an eye out for a cheap launchpad so i can use both voices.

On my Launchpad (a Mini Mk3) it’s possible to define multiple pages of grids that send different MIDI CCs, and switch between them using buttons at the top right of the grid. This might give you some of what you’re looking for.

3 Likes

Multiple pages, like you’re describing, would be a neat feature for monome 64 users in future versions :wink:

2 Likes

@mattbiddulph i absolutely love this script. i love what it does to drums and i have been experimenting with other loops as well.

i have a question about creating loops - how do i add my own bpm?

i can see in some of the demos you provided there are bpms:

but when i add my own .wav files in a folder it doesn’t add the bpm. does it sync to the current global clock in the case its not provided?

Beets always assumes that every audio file in a folder is one bar long when it loads it. Even if you have a number of audio files with different original BPMs, they’ll be sped up or slowed down to match the global BPM on the Norns clock.

That BPM setting you found in the JSON file is just a pre-calculated reference for the softcut engine so that it knows the original BPM of the audio file (and can therefore speed or slow it to match the required BPM at runtime) without having to recalculate it every time it loads.

1 Like

Edit at line 163:

params:add({ type = “number”, id = “the_bpm”, name = “THE BPM”, min = 0, max = 300, default = 120})
params:set_action(“the_bpm”, function(x) params:set(“clock_tempo”, x) end)
arcify:register(“the_bpm”, .1)

Throwing this code in lets us map tempo with arcify by making bpm a param which is really cool and satisfying. However, whenever I land on my new destination tempo the loop will jump back to 1, making the smooth tempo change not so smooth. This happens when adjusting the tempo with the norns encoder as well. Its like it is finding the 1 now that its in the new tempo instead of just letting the loop play.

Finally tried this and it’s pretty amazing :slight_smile: been using a Korg Nanokontrol for midi and still need to figure out the best way to assign stuff, but threw in some old folders of breakboeats and got instant breakcore so seems promising :slight_smile:

edit: also I’d second the comments above that timestretching (akai style and/or modern) would be incredible. As would jungle-style pitch shifting stuff

4 Likes

this script is awesome. Reverb released a huge zip of drum machine samples earlier this year and this script just eats them up.

4 Likes

Thank you! This is the perfect mission statement for Beets, exactly what I was trying to build:

3 Likes

Is there a specific limit to the number of wavs you can have in a folder? While looking for loops to put on there I remembered I was on this “digital locked grooves” compilation so I converted all 237 tracks to wavs and threw them on there but it only seems to want to play the first 50 - after that it displays the number up to 237 but they are silent

adding another voice to the recent chorus singing praises of beets. super fun and immediate.

3 Likes

When Beets loads a folder, it loads each wav file into a single long Softcut “tape” buffer at regular intervals (a couple of seconds apart). This is so that it can jump around the tape instantly when playing. The Softcut buffer is a fixed length, so eventually Beets just runs out of tape.

2 Likes

Ah interesting! Thanks for the info. That many loops was more than the resolution of the midi controller to even select properly anyway

Beets on the Radel.

1 Like

This script is so good; I’ve thrown all manner of things at it, and just a couple of folders of Tanzbar and MFB 502 samples (more or less chosen at random) makes for instant slow-motion breakbeat dub when run through suitable effects… and breakcore is never far away either. Incredible!

1 Like