RetroArch
Classes | Typedefs | Functions | Variables
coreaudio.c File Reference
#include <stdlib.h>
#include <CoreAudio/CoreAudio.h>
#include <CoreAudio/CoreAudioTypes.h>
#include <AudioUnit/AudioUnit.h>
#include <AudioUnit/AUComponent.h>
#include <boolean.h>
#include <queues/fifo_queue.h>
#include <rthreads/rthreads.h>
#include <retro_endianness.h>
#include <string/stdstring.h>
#include "../audio_driver.h"
#include "../../verbosity.h"
Include dependency graph for coreaudio.c:

Classes

struct  coreaudio
 

Typedefs

typedef struct coreaudio coreaudio_t
 

Functions

static void coreaudio_free (void *data)
 
static OSStatus audio_write_cb (void *userdata, AudioUnitRenderActionFlags *action_flags, const AudioTimeStamp *time_stamp, UInt32 bus_number, UInt32 number_frames, AudioBufferList *io_data)
 
static void choose_output_device (coreaudio_t *dev, const char *device)
 
static voidcoreaudio_init (const char *device, unsigned rate, unsigned latency, unsigned block_frames, unsigned *new_rate)
 
static ssize_t coreaudio_write (void *data, const void *buf_, size_t size)
 
static void coreaudio_set_nonblock_state (void *data, bool state)
 
static bool coreaudio_alive (void *data)
 
static bool coreaudio_stop (void *data)
 
static bool coreaudio_start (void *data, bool is_shutdown)
 
static bool coreaudio_use_float (void *data)
 
static size_t coreaudio_write_avail (void *data)
 
static size_t coreaudio_buffer_size (void *data)
 
static voidcoreaudio_device_list_new (void *data)
 
static void coreaudio_device_list_free (void *data, void *array_list_data)
 

Variables

static bool g_interrupted
 
audio_driver_t audio_coreaudio
 

Typedef Documentation

◆ coreaudio_t

typedef struct coreaudio coreaudio_t

Function Documentation

◆ audio_write_cb()

static OSStatus audio_write_cb ( void userdata,
AudioUnitRenderActionFlags *  action_flags,
const AudioTimeStamp *  time_stamp,
UInt32  bus_number,
UInt32  number_frames,
AudioBufferList *  io_data 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ choose_output_device()

static void choose_output_device ( coreaudio_t dev,
const char *  device 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ coreaudio_alive()

static bool coreaudio_alive ( void data)
static

◆ coreaudio_buffer_size()

static size_t coreaudio_buffer_size ( void data)
static

◆ coreaudio_device_list_free()

static void coreaudio_device_list_free ( void data,
void array_list_data 
)
static

◆ coreaudio_device_list_new()

static void* coreaudio_device_list_new ( void data)
static

◆ coreaudio_free()

static void coreaudio_free ( void data)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ coreaudio_init()

static void* coreaudio_init ( const char *  device,
unsigned  rate,
unsigned  latency,
unsigned  block_frames,
unsigned *  new_rate 
)
static
Here is the call graph for this function:

◆ coreaudio_set_nonblock_state()

static void coreaudio_set_nonblock_state ( void data,
bool  state 
)
static

◆ coreaudio_start()

static bool coreaudio_start ( void data,
bool  is_shutdown 
)
static

◆ coreaudio_stop()

static bool coreaudio_stop ( void data)
static

◆ coreaudio_use_float()

static bool coreaudio_use_float ( void data)
static
Here is the call graph for this function:

◆ coreaudio_write()

static ssize_t coreaudio_write ( void data,
const void buf_,
size_t  size 
)
static
Here is the call graph for this function:

◆ coreaudio_write_avail()

static size_t coreaudio_write_avail ( void data)
static
Here is the call graph for this function:

Variable Documentation

◆ audio_coreaudio

audio_driver_t audio_coreaudio
Initial value:
= {
"coreaudio",
}
static ssize_t coreaudio_write(void *data, const void *buf_, size_t size)
Definition: coreaudio.c:340
static bool coreaudio_alive(void *data)
Definition: coreaudio.c:388
static bool coreaudio_start(void *data, bool is_shutdown)
Definition: coreaudio.c:405
static void coreaudio_free(void *data)
Definition: coreaudio.c:58
static void coreaudio_device_list_free(void *data, void *array_list_data)
Definition: coreaudio.c:444
static bool coreaudio_stop(void *data)
Definition: coreaudio.c:396
static void * coreaudio_init(const char *device, unsigned rate, unsigned latency, unsigned block_frames, unsigned *new_rate)
Definition: coreaudio.c:186
static size_t coreaudio_write_avail(void *data)
Definition: coreaudio.c:420
static void coreaudio_set_nonblock_state(void *data, bool state)
Definition: coreaudio.c:381
static bool coreaudio_use_float(void *data)
Definition: coreaudio.c:414
static void * coreaudio_device_list_new(void *data)
Definition: coreaudio.c:438
static size_t coreaudio_buffer_size(void *data)
Definition: coreaudio.c:432

◆ g_interrupted

bool g_interrupted
static