playing multiple notes

Jul 25, 2013 at 7:54am

playing multiple notes

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?

#257107
Jul 25, 2013 at 8:14am

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.

#257108
Jul 25, 2013 at 10:13am

You could also use

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

#257118
Jul 26, 2013 at 8:22am

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?

#257215
Jul 26, 2013 at 8:24am

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

#257216
Jul 28, 2013 at 2:23pm

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?

#257388
Jul 29, 2013 at 6:53am

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

#257446
Jul 29, 2013 at 7:38am

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.

#257455
Jul 30, 2013 at 1:16am

You can use poly~.

<code>

– Pasted Max Patch, click to expand. –

</code>

#257570

You must be logged in to reply to this topic.