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

Safe HaskellSafe
LanguageHaskell2010

Sound.ALSA.PCM.Parameters.Hardware

Contents

Synopsis

Types

data T i y a Source #

Instances
Monad (T i y) Source # 
Instance details

Defined in Sound.ALSA.PCM.Core.HwParams

Methods

(>>=) :: T i y a -> (a -> T i y b) -> T i y b #

(>>) :: T i y a -> T i y b -> T i y b #

return :: a -> T i y a #

fail :: String -> T i y a #

Functor (T i y) Source # 
Instance details

Defined in Sound.ALSA.PCM.Core.HwParams

Methods

fmap :: (a -> b) -> T i y a -> T i y b #

(<$) :: a -> T i y b -> T i y a #

Applicative (T i y) Source # 
Instance details

Defined in Sound.ALSA.PCM.Core.HwParams

Methods

pure :: a -> T i y a #

(<*>) :: T i y (a -> b) -> T i y a -> T i y b #

liftA2 :: (a -> b -> c) -> T i y a -> T i y b -> T i y c #

(*>) :: T i y a -> T i y b -> T i y b #

(<*) :: T i y a -> T i y b -> T i y a #

type Time = Int Source #

type Size = Int Source #

data Interleaved Source #

Instances
Access Interleaved Source # 
Instance details

Defined in Sound.ALSA.PCM.Core.Class

Methods

access :: T Interleaved y Access

setChannels :: C y => T Interleaved y ()

data Noninterleaved Source #

Instances
Access Noninterleaved Source # 
Instance details

Defined in Sound.ALSA.PCM.Core.Class

Methods

access :: T Noninterleaved y Access

setChannels :: C y => T Noninterleaved y ()

Primitive accessors to hardware parameters

setChannels :: Word -> T Noninterleaved y () Source #

For non-interleaved access the number of channels must be set manually. It can be chosen at runtime, but the compiler cannot check whether the number of allocated channels matches the one in readn and writen.

In interleaved access the number of channels is derived from the type and must not be set manually. The number is static but the compiler checks consistency with readi and writei.

setPeriods :: Word -> Ordering -> T i y () Source #

setBufferSize :: Size -> T i y () Source #

setTickTime :: Time -> Ordering -> T i y () Source #

Complex hardware parameter configuration

setRateBufferTime Source #

Arguments

:: SampleFreq

sample frequency

-> Time

buffer time

-> Time

period time

-> T Interleaved y (Size, Size)

(bufferSize,periodSize)