[20:56:17] <deva> Speaking of which; I have had an idea for further diskstreming optimisation in the way we store the samples in the files [20:56:23] <deva> today we do sample interleaving [20:57:07] <deva> [sample 1 ch 1][sample 1 ch 2]...[sample 2 ch 1][sample 2 ch 2]... and so on [20:57:36] <deva> when we read those into memory we need to deinterleave them which is a rather straining on memory operations [20:57:48] <deva> the engine works in "chunks" of say 4k [20:58:12] <deva> So if we instead make the files contain the samples "chunk interleaved" [20:58:46] <deva> [sample 1 ch 1][sample 2 ch1]...[sample 4k ch1][sample 1 ch 2][sample 2 ch2]...[sample 4k ch2].... [20:59:06] <deva> then we would save a lot of sample moving in memory when reading [20:59:47] <deva> the downside would however be that it will not be possible to play the wav files in a regular wav player because the samples would have the wrong ordering [20:59:59] <deva> ... it would play but it would sound strange [21:01:21] <deva> We would basically be making our own wav format for the kits with that approach, which I suppose might be ok in the name of The Holy Distreamer :p [21:01:28] <deva> *Diskstreamer [21:02:12] <deva> >>Thou Shalt Never Spell The Name Of The Holy Diskstreamer Wrongly<< [21:02:30] *deva starts looking for a rock to climb under [21:04:19] <André Nusser.jabber> What happened here? :D [21:04:21] <André Nusser.jabber> Let me read. [21:04:58] <deva> Sorry ... I got carried a bit away ;) [21:07:39] <André Nusser.jabber> :D [21:08:24] <André Nusser.jabber> Isn't there maybe a wav data format for that? [21:08:33] <deva> I don't think so [21:08:57] <deva> Basically we would need it to be wav anymore, but merely a header and an "array" of floats [21:09:12] <deva> Perhaps not even the header, but headers are usually a good idea :p [21:09:38] <deva> We would no longer need libsndfile either [21:09:56] <deva> And removing a depency is never a bad thing :-)