#include "pa_mac_core_blocking.h"
#include "pa_mac_core_internal.h"
#include <assert.h>
#include <libkern/OSAtomic.h>
Functions | |
PaError | initializeBlioRingBuffers (PaMacBlio *blio, PaSampleFormat inputSampleFormat, PaSampleFormat outputSampleFormat, size_t framesPerBuffer, long ringBufferSize, int inChan, int outChan) |
PaError | resetBlioRingBuffers (PaMacBlio *blio) |
PaError | destroyBlioRingBuffers (PaMacBlio *blio) |
int | BlioCallback (const void *input, void *output, unsigned long frameCount, const PaStreamCallbackTimeInfo *timeInfo, PaStreamCallbackFlags statusFlags, void *userData) |
PaError | ReadStream (PaStream *stream, void *buffer, unsigned long frames) |
PaError | WriteStream (PaStream *stream, const void *buffer, unsigned long frames) |
void | waitUntilBlioWriteBufferIsFlushed (PaMacBlio *blio) |
signed long | GetStreamReadAvailable (PaStream *stream) |
signed long | GetStreamWriteAvailable (PaStream *stream) |
int BlioCallback | ( | const void * | input, | |
void * | output, | |||
unsigned long | frameCount, | |||
const PaStreamCallbackTimeInfo * | timeInfo, | |||
PaStreamCallbackFlags | statusFlags, | |||
void * | userData | |||
) |
static signed long GetStreamReadAvailable | ( | PaStream * | stream | ) |
Number of frames that can be read from input stream without blocking.
s | Pointer to PortAudio stream |
static signed long GetStreamWriteAvailable | ( | PaStream * | stream | ) |
Number of frames that can be written to output stream without blocking.
s | Pointer to PortAudio stream |
PaError initializeBlioRingBuffers | ( | PaMacBlio * | blio, | |
PaSampleFormat | inputSampleFormat, | |||
PaSampleFormat | outputSampleFormat, | |||
size_t | framesPerBuffer, | |||
long | ringBufferSize, | |||
int | inChan, | |||
int | outChan | |||
) |
Read data from input stream. This reads the indicated number of frames into the supplied buffer from an input stream, and blocks until this is done.
s | Pointer to PortAudio stream | |
buffer | Pointer to buffer that will receive interleaved data (or an array of pointers to a buffer for each non-interleaved channel) | |
frames | Number of frames to read from stream |
void waitUntilBlioWriteBufferIsFlushed | ( | PaMacBlio * | blio | ) |
Write data to output stream. This writes the indicated number of frames from the supplied buffer to an output stream, and blocks until this is done.
s | Pointer to PortAudio stream | |
buffer | Pointer to buffer that provides interleaved data (or an array of pointers to a buffer for each non-interleaved channel) | |
frames | Number of frames to write to stream |