| ||||||||||||||||||||||
| ||||||||||||||||||||||
| ||||||||||||||||||||||
Description | ||||||||||||||||||||||
Partial binding to CoreAudio. At the moment only HostTime and parts of the HAL (Hardware Abstraction Layer) is supported. See http://developer.apple.com/documentation/MusicAudio/Reference/CACoreAudioReference/AudioHardware/ | ||||||||||||||||||||||
Synopsis | ||||||||||||||||||||||
some basic types | ||||||||||||||||||||||
type Device = UInt32 | ||||||||||||||||||||||
type Stream = UInt32 | ||||||||||||||||||||||
data AudioValueRange | ||||||||||||||||||||||
| ||||||||||||||||||||||
data Direction | ||||||||||||||||||||||
| ||||||||||||||||||||||
more types | ||||||||||||||||||||||
type AudioDeviceIOProc a b = UInt32 -> Ptr AudioTimeStamp -> Ptr (AudioBufferList a) -> Ptr AudioTimeStamp -> Ptr (AudioBufferList a) -> Ptr AudioTimeStamp -> Ptr b -> IO OSStatus | ||||||||||||||||||||||
Arguments:
| ||||||||||||||||||||||
type AudioDeviceIOProcFloat c = AudioDeviceIOProc Float c | ||||||||||||||||||||||
mkAudioDeviceIOProc :: AudioDeviceIOProc a b -> IO (FunPtr (AudioDeviceIOProc a b)) | ||||||||||||||||||||||
data AudioTimeStamp | ||||||||||||||||||||||
| ||||||||||||||||||||||
data SMPTETime | ||||||||||||||||||||||
| ||||||||||||||||||||||
data AudioBuffer a | ||||||||||||||||||||||
| ||||||||||||||||||||||
data AudioBufferList a | ||||||||||||||||||||||
| ||||||||||||||||||||||
pokeAudioBufferList :: Ptr (AudioBufferList a) -> AudioBufferList a -> IO Int | ||||||||||||||||||||||
Returns the number of bytes written. | ||||||||||||||||||||||
peekAudioBufferList :: Ptr (AudioBufferList a) -> IO (AudioBufferList a) | ||||||||||||||||||||||
Does not need the length of the list, as it is stored in the memory. | ||||||||||||||||||||||
HostTime | ||||||||||||||||||||||
audioGetCurrentHostTime :: IO UInt64 | ||||||||||||||||||||||
audioConvertHostTimeToNanos :: UInt64 -> IO UInt64 | ||||||||||||||||||||||
audioConvertNanosToHostTime :: UInt64 -> IO UInt64 | ||||||||||||||||||||||
audioGetCurrentTimeInNanos :: IO UInt64 | ||||||||||||||||||||||
low-level whatever | ||||||||||||||||||||||
audioDeviceStart :: Device -> FunPtr (AudioDeviceIOProc a b) -> IO OSStatus | ||||||||||||||||||||||
audioDeviceStop :: Device -> FunPtr (AudioDeviceIOProc a b) -> IO OSStatus | ||||||||||||||||||||||
audioDeviceAddIOProc :: Device -> FunPtr (AudioDeviceIOProc a b) -> Ptr b -> IO OSStatus | ||||||||||||||||||||||
audioDeviceRemoveIOProc :: Device -> FunPtr (AudioDeviceIOProc a b) -> IO OSStatus | ||||||||||||||||||||||
enumerations | ||||||||||||||||||||||
enumerateAudioDevices :: IO [Device] | ||||||||||||||||||||||
enumerateAudioStreams :: Device -> IO ([Stream], [Stream]) | ||||||||||||||||||||||
input and output streams | ||||||||||||||||||||||
properties | ||||||||||||||||||||||
audioDeviceGetProperty | ||||||||||||||||||||||
| ||||||||||||||||||||||
audioDeviceGetPropertyList :: Storable a => Device -> Int -> Direction -> String -> IO (Maybe [a]) | ||||||||||||||||||||||
audioDeviceGetPropertyString :: Device -> Int -> Direction -> String -> IO (Maybe String) | ||||||||||||||||||||||
audioDeviceGetPropertyCFString :: Device -> Int -> Direction -> String -> IO (Maybe String) | ||||||||||||||||||||||
audioDeviceSetProperty :: Storable a => Device -> UInt32 -> Direction -> String -> a -> IO OSStatus | ||||||||||||||||||||||
audioDeviceName :: Device -> IO String | ||||||||||||||||||||||
Produced by Haddock version 2.4.1 |