[Haskell-cafe] Haskell audio libraries & audio formats
John Van Enk
vanenkj at gmail.com
Sun Aug 24 16:13:17 EDT 2008
I was hoping to use a packed format like ByteString eventually. Right now, I
want to get everything working nicely. As it stands, I end up marshaling a
lot of information into/out of arrays which I'd much rather keep as a block
I'm guessing that some sort of unboxed array would be close to what I want.
If you have suggestions, I'm more than open to them. (This is my first
attempt at writing a library.)
On Sun, Aug 24, 2008 at 1:06 PM, Eric Kidd <haskell at randomhacks.net> wrote:
> On Sun, Aug 24, 2008 at 12:41 PM, John Van Enk <vanenkj at gmail.com> wrote:
> > It implements the Haskell bindings to the PortAudio library. This is the
> > library behind Audacious. I *have not* implemented the callback model
> > but I plan to do that.
> > Perhaps this will be something which is useful to you?
> Looks like a great binding! We actually use portaudio in callback mode
> at work, with reasonable success (from C++).
> One question: I notice that your writeStream function represents audio
> using '[[a]]'.
> writeStream :: (Storable a) => PaStream a -- ^ The output stream
> -> [[a]] -- ^ The samples to be played
> -> Int -- ^ Number of frames
> -> IO (Either String ErrorCode) -- ^ The return status
> of the write
> In my experiments, I've been somewhat unsatisfied with the performance
> of '[[a]]' as an audio format. Would you be interested in also
> supporting an array-based format for audio data?
> I'm currently converting my program to use HCodec's Data.Audio
> representation, which looks pretty promising. I don't know how it
> performs yet, but I'll let you know.
> Thank you for the pointer to your library! It will make an excellent
> addition to the available Haskell sound libraries.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Haskell-Cafe