polyphonic sample playback using MC

JD88's icon

Hi, first time posting and still very much a beginner in Max.

I'm trying to figure out what I think is a simple idea, I want to have one short percussive sample played back with varying start times. This is to replicate multiple individuals hitting something or clapping in unison but slightly out of time with each other.

The closest I've got to a solution is using mc.groove~with a deviate message and loop and timestretch on. However I want to control the trigger of the sample and then for a number of samples to be played back at random intervals from each other. I thought mc.play~ would help but I don't know how to trigger the delay of each channel.

Alternatives solutions could be either setting up something granular or a chorus/fast delay, but then the delay would be too uniform?

For context the idea is inspired by Jose Maceda 'Udlot Udlot' which has a chorus of percussion hits.

Thanks!

Wil's icon

Best with [mc.poly~]

poly_perc.zip
zip 2.57 KB

This is basic play~

You have a lot of work to do

(maybe change groove~ and learn how to target individual players with different messages like rate

Source Audio's icon

why not delays and a bit of filtering

maybe tapout with random delay list on every hit ?

Wil's icon

Here is tapin/tapout

static - but fun!!

Max Patch
Copy patch and select New From Clipboard in Max.

Wil's icon

zui~ works great if you want ONLY a certain amount of bangs

Max Patch
Copy patch and select New From Clipboard in Max.
Source Audio's icon

I thought of something like this to start with

JD88's icon

Thanks for all your suggestions! There's many ways to peel this orange

Having seen the MC presentation with David Zicarelli & Tom Hall, there was one complex patch that nearly did what I was looking for. Then I saw a Music Hackspace webinar with David using Trains, patch and youtube link attached:
https://www.youtube.com/live/7hjNS0ucQCo?si=Wm-n7CZkdFJXvqDe&t=1895

I've yet to delve into the subsequent more granular patch, but the adjustment of the phase in this patch seems possible to scale through the use of MC?

mc-mhs-05-twotrains.maxpat
Max Patch

Sébastien Gay's icon

Another try (400 ms being the approx. length of the first kick in drumLoop.aif) :

Max Patch
Copy patch and select New From Clipboard in Max.