alsa-pcm-0.6.0.1: Binding to the ALSA Library API (PCM audio).

Safe HaskellNone

Sound.ALSA.PCM

Synopsis

Documentation

data SoundFmt y Source

Constructors

SoundFmt 

Instances

data SoundSource handle y Source

Counts are in samples, not bytes. Multi-channel data is interleaved.

Constructors

SoundSource 

Fields

soundSourceOpen :: IO (handle y)
 
soundSourceClose :: handle y -> IO ()
 
soundSourceStart :: handle y -> IO ()
 
soundSourceStop :: handle y -> IO ()
 
soundSourceRead :: handle y -> Ptr y -> Size -> IO Size
 

data SoundSink handle y Source

Constructors

SoundSink 

Fields

soundSinkOpen :: IO (handle y)
 
soundSinkClose :: handle y -> IO ()
 
soundSinkWrite :: handle y -> Ptr y -> Size -> IO ()
 
soundSinkStart :: handle y -> IO ()
 
soundSinkStop :: handle y -> IO ()
 

withSoundSource :: SoundSource handle y -> (handle y -> IO a) -> IO aSource

withSoundSourceRunning :: SoundSource handle y -> handle y -> IO a -> IO aSource

withSoundSink :: SoundSink handle y -> (handle y -> IO a) -> IO aSource

withSoundSinkRunning :: SoundSink handle y -> handle y -> IO a -> IO aSource

copySoundSource

Arguments

:: SampleFmt y 
=> SoundSource handleIn y 
-> SoundSink handleOut y 
-> Size

Buffer size (in sample frames) to use

-> IO ()