[haskell-art] Haskell audio I/O packages
John Lato
jwlato at gmail.com
Tue Dec 9 17:14:25 GMT 2008
On Tue, Dec 9, 2008 at 4:45 PM, stefan kersten <sk at k-hornz.de> wrote:
> hi john,
>
> John Lato wrote:
>> Using unsafeFreezeIOCArray and my stream implementation provides the
>> fastest version yet, with an average of about 1.9s per run. This is
>> in the hsndfile.hs test code as function "test1".
>>
>> For the record, the stream implementation and fold I'm using are
>> copied from Data.ByteString.Lazy. I changed the types to suit this
>> code, but that's the source.
>
> thanks for posting the code. i'm not very convinced of lazy IO, but i'd
> be very interested in incorporating an iteratee based approach into
> hsndfile. i'm currently finalizing various api changes and extensions
> (mostly to do with abstracting both mutable and immutable buffers) and
> when i'm done i'll have a look at what you did in hsoundfile-3.
> obviously oleg's iteratee code is not hackaged yet, and i couldn't find
> it anywhere else, do you have any pointers?
>
> thanks,
> <sk>
>
Hi Stefan,
It's available at
http://okmij.org/ftp/Haskell/Iteratee/
His DEFUN slides and notes, found at
http://okmij.org/ftp/Streams.html#iteratee, are also helpful.
I think it's pretty obvious how to apply this to hsndfile. However, I
just noticed that Oleg has posted a TIFF library using an Iteratee
approach. It supports seeking/random access and various other things
that directly apply to the matter at hand. Looks like I'll have to do
some studying again...
http://okmij.org/ftp/Streams.html#random-bin-IO
More information about the haskell-art
mailing list