[Csnd] Csound6 and Spatialization
Date | 2013-08-03 07:37 |
From | Eric Lyon |
Subject | [Csnd] Csound6 and Spatialization |
Greetings and congratulations Csound developers, on releasing Csound6! Below is an issue that might be relevant for Csound7.
N-channel spatialization (where N is an arbitrarily large number) is an area of computer music research where I expect we will see some of the greatest technical/aesthetic advances through at least the next decade. Any audio software that has hard-coded limits on the number of channels it can read, write, and process, is not ready for N-channel spatialization. The major commercial DAWs (ProTools, Logic, Nuendo, etc.) are not even at the starting gate. SuperCollider is very close, and when released, SC version 3.7 should be fully ready for N-channel spatialization.
It appears that the new array feature in Csound6, if extended to audio variables, could nicely support N-channel processing. However, for now, Csound remains in the fixed-channel universe, with an apparent maximum of 40 channels (already a rather low limit these days). For example, from the documentation for the diskin2 opcode:
diskin2 can also read multichannel files with any number of channels in the range 1 to 24 in versions before 5.14, and 40 after In order to support N-channel spatialization, diskin2 would need to be able to read multichannel files with any number of channels, full stop. From what I've seen of the Csound codebase, this would require a non-trivial redesign of the Ugen architecture.
libsndfile on which Csound I/O is based is well-suited to N-channel processing. Some of its code examples might be worth a look It is highly advantageous that libsndfile supports the visionary Apple Core Audio Format (CAF) which allows for unlimited numbers of channels and unrestricted file size. Again, congratulations on Csound6 which has many new and wonderful features! I hope the developers will consider extending Csound for N-channel spatialization in the next major release.
Eric |
Date | 2013-08-03 20:38 |
From | John Clements |
Subject | Re: [Csnd] Csound6 and Spatialization |
|
Date | 2013-08-04 10:50 |
From | Ben Hackbarth |
Subject | Re: [Csnd] Csound6 and Spatialization |
Victor > Also because of the new simple overloading mechanism, it would seem very advantageous to extend this capability to any opcode which inputs or outputs an unlimited number of a-rate variables. for instance, diskin2, vbap, fin, fout, pconvolve, etc.Victor > we could certainly have the out and in opcodes take in Victor > and produce arrays. -- ben
On Sat, Aug 3, 2013 at 9:38 PM, John Clements <jclements77@gmail.com> wrote:
|