
I think the problem I'll run into is the 128 channel case. I'm hoping for a general solution... I'm almost positive this will require runtime checks. Your solution is what I was thinking for functions requiring exactly N channels (I'm not sure if there are many functions like that). On Tue, Aug 26, 2008 at 2:11 PM, Henning Thielemann < lemming@henning-thielemann.de> wrote:
On Mon, 25 Aug 2008, John Van Enk wrote:
How well would the storablevector package (Data.StorableVector) work for
storing audio data? One of the major issues I'm still working over is that I want to maintain something similar to a [[a]] format (since the underlying PortAudio library and hardware could support hundreds of interleaved channels) but I would like to be able to build in some typechecking to the functions to make sure the number of channels matches the nubmer expected in the functions.
With data Stereo a = Stereo !a !a
you could also use Stereo (Stereo a) for quadrophony and so on. Would this be convenient enough?
StorableVector stores everything of fixed length for which a Storable instance is defined.
-- /jve