Reasons for limited number of channels in AudioSampleBuffer

hi everyone,

while recording multichannel audio I found that the size of an AudioSampleBuffer is limited to 32 channels. I need to buffer much more channels before writing them to files and just wanted to know the reason for this limitation.
So should I use a modified version of AudioSampleBuffer and increase maxNumAudioSampleBufferChannels or is it better to use additional buffers?

Yes, tricky one, that. It depends whether you want to remember to always hack your version of juce when you update it or not. If I get chance I’ll see if I can find a lightweight way of making that number dynamically resizable rather than fixed.

By the way I recognized that i can only open 64 channels (inputs + outputs) via the audioDeviceSelectorComponent. When I activate the 65th channel, all channels fall silent. Is that an JUCE-limitation or may be my error I didn’t find up to now?

Audio devices are two RME MADI’s which should do 128 channel in and out (equals 256 channels). Using in’s and out’s on both cards is no problem as long as the total number of channels isn’t more than 64…

Thanks for any tipps or infos…

Blimey, I probably just set it to 64 thinking that that’d be plenty! To increase that limit I’d need to also increase the limit in the AudioSampleBuffers, and if people are actually using it for such large channel counts, I guess I’d better do so!

Thanks for that, Jules!
And now the hated question: I know that you’re busy and don’t know how to pack your 48 hours into a day, but when do you think you have time for this changes? I don’t need them today or this week, so there’s no such hurry…

Don’t know! Will try to do it soon though!

The current AudioSampleBuffer maxNumChannels value is definately too low, because there are VST plugins that have more channels. For instance: D16 Nepheton has a fixed number of 36 channels.

FWIW, our plugin has 34 outputs
1 main stereo and 16 stereo aux buses.

I would like to test the system with 4 cascaded MADI-cards (64in/64out per card). I think, that’s maximum there…