Forums > MaxMSP

I need serious polybuffer advice… here's my patch

August 22, 2012 | 11:22 pm

Hi all,

With help from many polybuffer-related posts, I have managed to make my system work, BUT it is still inefficient in some aspects and I’m probably doing it the loooong way. It works as follows: 1st you load the first polybuffer with folder A and the 2nd polybuffer with folder B. The idea is to concatenate random files from folder A with random files from folder B. However, files from folder A must never play duplicates. This is solved with [urn]. Folder B can have duplicates, although it should be less recurrent than folder A. I also need to add pauses based on probabilities, which are there with the [delay] and [table] objects. All this is working ok.

Currently, when you click the bang to play, you get the series: A-B- (delay)- A-B- (delay)-A-B- (delay)- A-B- (delay) -A-B-(delay). (sometimes there might not be delay and/or B files, when they receive a value of zero). I have a groove object for each sample.

My problem is, I need to previously be able to chose the length of the series. So, if I want a series of 20 {A-B- (delay)}s, how can I do that without having to copy and paste more groove objects? Is there a way to do this with just 2 grooves having the conditions above? And also with the possibility of replaying it without losing the series?

I would be really grateful if someone can help me! I have really been struggling with this!!

NB


August 23, 2012 | 1:23 am

You can certainly do this with one or two groove~ objects. You are best off generating your entire sequence first (samples and delay), dumping it into a coll or dict, and then sequencing it into your groove. Here’s the skeleton of it — you can figure it out from here:

– Pasted Max Patch, click to expand. –

August 23, 2012 | 9:51 am

Hi Mattyo, thanks a lot! I haven’t been able to make it work, though. I’m getting the error sprintf: can’t convert symbol to type of argument 1 and I can’t hear any audio (I’ve completed the groove objects and the buffers). Do you know what might be causing this?

Thanks again!!


August 23, 2012 | 11:29 am

Never mind, now it works! I just had to change the symbols for 0s in the pack and unpack objects. Thank you very much!


August 23, 2012 | 11:45 am

sorry if that was a bit sloppy — I was kicking it out a bit hastily. Glad it solves your problem!

M


Viewing 5 posts - 1 through 5 (of 5 total)