Использование pulse-simple пакет я сделал следующий код:Сохранение импульса аудио потока с Haskell привязок
main=do
s<-simpleNew Nothing "example" Record Nothing "this is an example application"
(SampleSpec (F32 LittleEndian) 44100 1) Nothing Nothing
xs<-simpleRead s $ 44100*10 :: IO [Float]
simpleFree s
play xs
play :: [Float] -> IO()
play d = do
s<-simpleNew Nothing "example" Play Nothing "this is an example application"
(SampleSpec (F32 LittleEndian) 44100 1) Nothing Nothing
simpleWrite s d
simpleDrain s
simpleFree s
Это работает и записывает 10 секунд аудио, а затем воспроизводит его.
Теперь я хочу кодировать и сохранять аудиофайл (как .wav rr), чтобы его можно было воспроизвести в другой программе или преобразовать. Я думаю, что это больше звуковой вопрос, поэтому для людей, не являющихся хаскелами, у меня в основном есть массив поплавков длиной 44100 * 10. Я подозреваю, что мне понадобится другая библиотека.
Заранее спасибо.