Forums > MaxMSP

playing multiple notes

July 25, 2013 | 7:54 am

So I have a list of frequencies with some I would like to combine together into one sound. There are zeros in the data to distinguish one group from another. For example: 230 120 440 0 68 32 0 …
The problem is that each group contains different numbers of frequencies and this variability makes it harder to have a universal way to combine each group. Is there a way to somehow store each group and then output it together as one sound, and then use some delay to play each group by itself?


July 25, 2013 | 8:14 am

how is that list being generated? And how do you want to "play each group by itself"? I think we’re missing a bit of the story here.

Normally I’d handle this in a loop; I’d start by feeding the list through [zl sub 0] to get the locations of the zeros, and then use zl slice to use those zeros as the demarcation.


July 25, 2013 | 10:13 am

You could also use

iter
|
sel 0:
right outlet sends non-zero numbers into [zl group]
left outlet bangs out [zl group]


July 26, 2013 | 8:22 am

the list is being read from a text file that is already prepared, and say I have a 4 frequencies like 220 440 650 330, I want to play them at the same time like a chord on a piano. The zeroes in the list would separate each "group". However each group has different number of frequencies like one might have 2 while another will have 4. So is there a way to play them like a chord except I don’t know how many notes there will be exactly each time?


July 26, 2013 | 8:24 am

And how can I make sure each group separated by zeros doesn’t mix with each other?


July 28, 2013 | 2:23 pm

How are you going to trigger the next group if they are all coming from one long list? Is it going to be after a set interval or will you want a [button] to trigger the next one manually? Or something completely different?


July 29, 2013 | 6:53 am

I want a button to trigger the next one, but hopefully it can automatic like after each time a 0 is outputted,the button will trigger the next group to be played together


July 29, 2013 | 7:38 am

with this method :
<code>

– Pasted Max Patch, click to expand. –

</code>
you need to first feed teh list, then each bang you send to [zl queue] will give you one "group" that was separated by a 0. One after the other, and only once each group – if you want to resend everything from start you need to re send the list.


July 30, 2013 | 1:16 am

You can use poly~.

<code>

– Pasted Max Patch, click to expand. –

</code>


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