#include "pa_mac_core_utilities.h"
#include "pa_mac_core_internal.h"
#include <libkern/OSAtomic.h>
#include <strings.h>
#include <pthread.h>
Data Structures | |
struct | PaMacXRunListNode_s |
Typedefs | |
typedef struct PaMacXRunListNode_s | PaMacXRunListNode |
Functions | |
PaError | PaMacCore_SetUnixError (int err, int line) |
PaError | PaMacCore_SetError (OSStatus error, int line, int isError) |
long | computeRingBufferSize (const PaStreamParameters *inputParameters, const PaStreamParameters *outputParameters, long inputFramesPerBuffer, long outputFramesPerBuffer, double sampleRate) |
OSStatus | propertyProc (AudioDeviceID inDevice, UInt32 inChannel, Boolean isInput, AudioDevicePropertyID inPropertyID, void *inClientData) |
PaError | AudioDeviceSetPropertyNowAndWaitForChange (AudioDeviceID inDevice, UInt32 inChannel, Boolean isInput, AudioDevicePropertyID inPropertyID, UInt32 inPropertyDataSize, const void *inPropertyData, void *outPropertyData) |
PaError | setBestSampleRateForDevice (const AudioDeviceID device, const bool isOutput, const bool requireExact, const Float64 desiredSrate) |
PaError | setBestFramesPerBuffer (const AudioDeviceID device, const bool isOutput, UInt32 requestedFramesPerBuffer, UInt32 *actualFramesPerBuffer) |
OSStatus | xrunCallback (AudioDeviceID inDevice, UInt32 inChannel, Boolean isInput, AudioDevicePropertyID inPropertyID, void *inClientData) |
int | initializeXRunListenerList () |
int | destroyXRunListenerList () |
void * | addToXRunListenerList (void *stream) |
int | removeFromXRunListenerList (void *stream) |
typedef struct PaMacXRunListNode_s PaMacXRunListNode |
void* addToXRunListenerList | ( | void * | stream | ) |
Returns the list, so that it can be passed to CorAudio.
References PaMacXRunListNode_s::next, and PaMacXRunListNode_s::stream.
PaError AudioDeviceSetPropertyNowAndWaitForChange | ( | AudioDeviceID | inDevice, | |
UInt32 | inChannel, | |||
Boolean | isInput, | |||
AudioDevicePropertyID | inPropertyID, | |||
UInt32 | inPropertyDataSize, | |||
const void * | inPropertyData, | |||
void * | outPropertyData | |||
) |
References DBUG, ERR, FALSE, MutexAndBool::mutex, MutexAndBool::once, paInternalError, paNoError, paUnanticipatedHostError, and propertyProc().
Referenced by setBestSampleRateForDevice().
long computeRingBufferSize | ( | const PaStreamParameters * | inputParameters, | |
const PaStreamParameters * | outputParameters, | |||
long | inputFramesPerBuffer, | |||
long | outputFramesPerBuffer, | |||
double | sampleRate | |||
) |
References PaStreamParameters::channelCount, MAX, PaStreamParameters::suggestedLatency, VDBUG, and VVDBUG.
int destroyXRunListenerList | ( | ) |
returns zero on success or a unix style error code.
References PaMacXRunListNode_s::next.
int initializeXRunListenerList | ( | ) |
returns zero on success or a unix style error code.
Referenced by PaMacCore_Initialize().
PaError PaMacCore_SetError | ( | OSStatus | error, | |
int | line, | |||
int | isError | |||
) |
PaError PaMacCore_SetUnixError | ( | int | err, | |
int | line | |||
) |
Map Unix error to PaError. Pretty much the only one that maps is ENOMEM.
References DBUG, paCoreAudio, paInsufficientMemory, paInternalError, paNoError, and PaUtil_SetLastHostErrorInfo().
Referenced by initializeBlioRingBuffers().
OSStatus propertyProc | ( | AudioDeviceID | inDevice, | |
UInt32 | inChannel, | |||
Boolean | isInput, | |||
AudioDevicePropertyID | inPropertyID, | |||
void * | inClientData | |||
) |
References MutexAndBool::mutex, MutexAndBool::once, and TRUE.
Referenced by AudioDeviceSetPropertyNowAndWaitForChange().
int removeFromXRunListenerList | ( | void * | stream | ) |
Returns the number of Listeners in the list remaining.
References PaMacXRunListNode_s::next, and PaMacXRunListNode_s::stream.
PaError setBestFramesPerBuffer | ( | const AudioDeviceID | device, | |
const bool | isOutput, | |||
UInt32 | requestedFramesPerBuffer, | |||
UInt32 * | actualFramesPerBuffer | |||
) |
References ERR, paInsufficientMemory, paNoError, and VDBUG.
PaError setBestSampleRateForDevice | ( | const AudioDeviceID | device, | |
const bool | isOutput, | |||
const bool | requireExact, | |||
const Float64 | desiredSrate | |||
) |
OSStatus xrunCallback | ( | AudioDeviceID | inDevice, | |
UInt32 | inChannel, | |||
Boolean | isInput, | |||
AudioDevicePropertyID | inPropertyID, | |||
void * | inClientData | |||
) |