As you may or may not know, I’m a bit of a hardware nut. Specifically lo-fi hardware. Most of my music and setup has revolved around lo-fi/DIY hardware for years now.

I used to use a laptop, along with analog/lo-fi hardware before that but have since stopped using a laptop (in performance) altogether. I just love the feel/sound of gritty electronics.

When writing this paper for the ICMC earlier this year I got to thinking and brainstorming about the next iteration of my hardware hub, The Party Bus. The plan was to incorporate live (acoustic) sampling, trigger-based control, and pseudo-ghetto concat synthesis. It was an ambitious plan and I had most of the planning worked out. When it got around to finally start building it I realized that it would be faster if I just build it in Max (which I hadn’t touched in a couple of years) rather than in Arduino.

By this point I had toyed with the idea of adding a laptop back into my setup but given the complexity of it, I didn’t want that extra layer. I was intrigued by the headless/screenless Mac Mini setup I saw several people use while I was at STEIMearlier this year. After doing a bit of research and soul searching, I decided to rebuild my setup in Max and have it eventually live in a headless Mac Mini. Basically ‘black boxed’. Which is, basically, I was planning on building, except in line code.

SO,

I started building stuff a couple of weeks ago. It has been very slow going as I haven’t coded in max for about 3 years now and my last creations weren’t anything terribly complex. Rather, they didn’t involve live audio, which is central to what I want to do now (and what I wanted to do then really). I also hadn’t used Max5 much either…. I quit right when it was about to come out.

What I want to do is pretty complex so I’m, sensibly, tackling it one step at a time. The main bit will consist of a dynamic/overdub/varispeed looper with quirky effects like slicing (the patch below) and granularization etc… It’s very much inspired by the WTPA Sampler which made up my Party Bus system. The actual looping/overdub/varispeed part is still getting some kinks worked out, but this part is done.

It’s setup so it will be an object I can drop into the bigger whole once everything else is done. The stuff on the left is generic/varispeed groove~ playback stuff. The extra bits just handle the manipulations coming out of the slicer. At the moment it’s not setup for live input as that will be a different module. So here you can load a sample and go to town on it.

What does it do?

You can jump around a sample at a variable, steady rate (between 1sec and 10ms).
You can jump around a sample at a variable, random rate.
You can reverse some of the ‘slices’ randomly.
You can add a triggered envelope to each ‘slice’ (the size of which adapts to speed).
You can manually shorten the triggered envelope decay.
You can alter the sample start and end point with this effecting the window for randomizations mentioned above. It also reverses the sample if you make the start point later than the end point.

And finally most of the above is effected by the overall speed/pitch of the sample playback. So if you slow down the sample, all of the slicing timing moves with it (as if you’re slowing down a tape/turntable), rather than the slicing being a separate effect sitting on top.