Indexing a multichannel buffer
I'm working with an existing patcher that uses index~
to play back audio out of a buffer, adapting the patcher for multi-channel wav files (upwards of 50-60 channels but number of channels isn't a guarantee). I've been using mc
objects whenever possible because of their flexibility and strength processing multiple channels. However, using mc.index~ <buffer>
gives me just one channel of output, even when the buffer contains many channels. If I force more channels out of the object using mc.index~ <buffer> @chans 100
, the output contains many channels but each channel is a duplicate of the first. Is there any way to index a multichannel buffer with a single mc.index~
object, or is there no way around needing a separate index~
for each channel?
can you use mc.target to go through and point each to a new track using its right inlet?
huh, yeah it does seem to not really be that mc. flexible. Consider going over to using mcs.play~ , which is very suited to this. It'll respond to the same signals, but can even have independent buffers per channel, iirc.
i just ran that senita-8ch in mcs.play~ and it plays just fine.
Thanks for the ideas! Unfortunately the patcher currently uses index~ (driven by a count~) since we need sample-accurate synchronization of different multi-channel files. It's easy enough to convert a sample number from count~ to a time in ms, but all I hear are clicks and pops when I try to give play~ a new start time every sample.
> but all I hear are clicks and pops when I try to give play~ a new start time every sample.
that's weird, because play~ takes a signal input, which does just that, so I'm thinking there's a different underlying problem here.