|
Ardour
9.0-pre0-1952-gc5e0b21049
|
#include <coreaudio_pcmio.h>
Public Member Functions | |
| CoreAudioPCM (void) | |
| ~CoreAudioPCM (void) | |
| int | state (void) const |
| uint32_t | n_playback_channels (void) const |
| uint32_t | n_capture_channels (void) const |
| void | discover () |
| void | device_list (std::map< size_t, std::string > &devices) const |
| void | input_device_list (std::map< size_t, std::string > &devices) const |
| void | output_device_list (std::map< size_t, std::string > &devices) const |
| void | duplex_device_list (std::map< size_t, std::string > &devices) const |
| int | available_sample_rates (uint32_t device_id, std::vector< float > &sampleRates) |
| int | available_buffer_sizes (uint32_t device_id, std::vector< uint32_t > &sampleRates) |
| uint32_t | available_channels (uint32_t device_id, bool input) |
| float | current_sample_rate (uint32_t device_id, bool input=false) |
| uint32_t | get_latency (uint32_t device_id, bool input) |
| std::string | cached_port_name (uint32_t portnum, bool input) const |
| float | sample_rate () |
| uint32_t | samples_per_period () const |
| int | set_samples_per_period (uint32_t) |
| void | launch_control_app (uint32_t device_id) |
| void | pcm_stop (void) |
| int | pcm_start (uint32_t input_device, uint32_t output_device, uint32_t sample_rate, uint32_t samples_per_period, int(process_callback(void *, const uint32_t, const uint64_t)), void *process_arg, PBD::TimingStats &dsp_timer) |
| void | set_error_callback (void(error_callback(void *)), void *error_arg) |
| void | set_halted_callback (void(halted_callback(void *)), void *halted_arg) |
| void | set_hw_changed_callback (void(callback(void *)), void *arg) |
| void | set_xrun_callback (void(callback(void *)), void *arg) |
| void | set_buffer_size_callback (void(callback(void *)), void *arg) |
| void | set_sample_rate_callback (void(callback(void *)), void *arg) |
| int | get_capture_channel (uint32_t chn, float *input, uint32_t n_samples) |
| int | set_playback_channel (uint32_t chn, const float *input, uint32_t n_samples) |
| uint32_t | n_samples () const |
| OSStatus | render_callback (AudioUnitRenderActionFlags *ioActionFlags, const AudioTimeStamp *inTimeStamp, UInt32 inBusNumber, UInt32 inNumberSamples, AudioBufferList *ioData) |
| void | xrun_callback () |
| void | buffer_size_callback () |
| void | sample_rate_callback () |
| void | hw_changed_callback () |
| void | halted_callback () |
Private Member Functions | |
| float | current_sample_rate_id (AudioDeviceID id, bool input) |
| uint32_t | current_buffer_size_id (AudioDeviceID id) |
| int | set_device_sample_rate_id (AudioDeviceID id, float rate, bool input) |
| int | set_device_buffer_size_id (AudioDeviceID id, uint32_t samples_per_period) |
| int | set_device_sample_rate (uint32_t device_id, float rate, bool input) |
| void | get_stream_latencies (uint32_t device_id, bool input, std::vector< uint32_t > &latencies) |
| void | cache_port_names (AudioDeviceID id, bool input) |
| void | destroy_aggregate_device () |
| int | create_aggregate_device (AudioDeviceID input_device_id, AudioDeviceID output_device_id, uint32_t sample_rate, AudioDeviceID *created_device) |
Private Attributes | |
| ::AudioUnit | _auhal |
| AudioDeviceID * | _device_ids |
| AudioBufferList * | _input_audio_buffer_list |
| AudioBufferList * | _output_audio_buffer_list |
| AudioDeviceID | _active_device_id |
| AudioDeviceID | _aggregate_device_id |
| AudioDeviceID | _aggregate_plugin_id |
| int | _state |
| uint32_t | _samples_per_period |
| uint32_t | _cur_samples_per_period |
| uint32_t | _capture_channels |
| uint32_t | _playback_channels |
| bool | _in_process |
| size_t | _n_devices |
| int(* | _process_callback )(void *, const uint32_t, const uint64_t) |
| void * | _process_arg |
| PBD::TimingStats * | _dsp_timer |
| void(* | _error_callback )(void *) |
| void * | _error_arg |
| void(* | _halted_callback )(void *) |
| void * | _halted_arg |
| void(* | _hw_changed_callback )(void *) |
| void * | _hw_changed_arg |
| void(* | _xrun_callback )(void *) |
| void * | _xrun_arg |
| void(* | _buffer_size_callback )(void *) |
| void * | _buffer_size_arg |
| void(* | _sample_rate_callback )(void *) |
| void * | _sample_rate_arg |
| std::map< size_t, std::string > | _devices |
| std::map< size_t, std::string > | _input_devices |
| std::map< size_t, std::string > | _output_devices |
| std::map< size_t, std::string > | _duplex_devices |
| uint32_t * | _device_ins |
| uint32_t * | _device_outs |
| std::vector< std::string > | _input_names |
| std::vector< std::string > | _output_names |
| pthread_mutex_t | _discovery_lock |
Definition at line 49 of file coreaudio_pcmio.h.
| ARDOUR::CoreAudioPCM::CoreAudioPCM | ( | void | ) |
| ARDOUR::CoreAudioPCM::~CoreAudioPCM | ( | void | ) |
| int ARDOUR::CoreAudioPCM::available_buffer_sizes | ( | uint32_t | device_id, |
| std::vector< uint32_t > & | sampleRates | ||
| ) |
| uint32_t ARDOUR::CoreAudioPCM::available_channels | ( | uint32_t | device_id, |
| bool | input | ||
| ) |
| int ARDOUR::CoreAudioPCM::available_sample_rates | ( | uint32_t | device_id, |
| std::vector< float > & | sampleRates | ||
| ) |
| void ARDOUR::CoreAudioPCM::buffer_size_callback | ( | ) |
|
private |
| std::string ARDOUR::CoreAudioPCM::cached_port_name | ( | uint32_t | portnum, |
| bool | input | ||
| ) | const |
|
private |
|
private |
| float ARDOUR::CoreAudioPCM::current_sample_rate | ( | uint32_t | device_id, |
| bool | input = false |
||
| ) |
|
private |
|
private |
|
inline |
Definition at line 60 of file coreaudio_pcmio.h.
| void ARDOUR::CoreAudioPCM::discover | ( | ) |
|
inline |
Definition at line 63 of file coreaudio_pcmio.h.
| int ARDOUR::CoreAudioPCM::get_capture_channel | ( | uint32_t | chn, |
| float * | input, | ||
| uint32_t | n_samples | ||
| ) |
| uint32_t ARDOUR::CoreAudioPCM::get_latency | ( | uint32_t | device_id, |
| bool | input | ||
| ) |
|
private |
| void ARDOUR::CoreAudioPCM::halted_callback | ( | ) |
| void ARDOUR::CoreAudioPCM::hw_changed_callback | ( | ) |
|
inline |
Definition at line 61 of file coreaudio_pcmio.h.
| void ARDOUR::CoreAudioPCM::launch_control_app | ( | uint32_t | device_id | ) |
|
inline |
Definition at line 57 of file coreaudio_pcmio.h.
|
inline |
Definition at line 56 of file coreaudio_pcmio.h.
|
inline |
Definition at line 144 of file coreaudio_pcmio.h.
|
inline |
Definition at line 62 of file coreaudio_pcmio.h.
| int ARDOUR::CoreAudioPCM::pcm_start | ( | uint32_t | input_device, |
| uint32_t | output_device, | ||
| uint32_t | sample_rate, | ||
| uint32_t | samples_per_period, | ||
| int(process_callback(void *, const uint32_t, const uint64_t)) | , | ||
| void * | process_arg, | ||
| PBD::TimingStats & | dsp_timer | ||
| ) |
| void ARDOUR::CoreAudioPCM::pcm_stop | ( | void | ) |
| OSStatus ARDOUR::CoreAudioPCM::render_callback | ( | AudioUnitRenderActionFlags * | ioActionFlags, |
| const AudioTimeStamp * | inTimeStamp, | ||
| UInt32 | inBusNumber, | ||
| UInt32 | inNumberSamples, | ||
| AudioBufferList * | ioData | ||
| ) |
| float ARDOUR::CoreAudioPCM::sample_rate | ( | ) |
| void ARDOUR::CoreAudioPCM::sample_rate_callback | ( | ) |
|
inline |
Definition at line 74 of file coreaudio_pcmio.h.
|
inline |
Definition at line 126 of file coreaudio_pcmio.h.
|
private |
|
private |
|
private |
|
inline |
Definition at line 95 of file coreaudio_pcmio.h.
|
inline |
Definition at line 103 of file coreaudio_pcmio.h.
|
inline |
Definition at line 111 of file coreaudio_pcmio.h.
| int ARDOUR::CoreAudioPCM::set_playback_channel | ( | uint32_t | chn, |
| const float * | input, | ||
| uint32_t | n_samples | ||
| ) |
|
inline |
Definition at line 133 of file coreaudio_pcmio.h.
| int ARDOUR::CoreAudioPCM::set_samples_per_period | ( | uint32_t | ) |
|
inline |
Definition at line 119 of file coreaudio_pcmio.h.
|
inline |
Definition at line 55 of file coreaudio_pcmio.h.
| void ARDOUR::CoreAudioPCM::xrun_callback | ( | ) |
|
private |
Definition at line 182 of file coreaudio_pcmio.h.
|
private |
Definition at line 183 of file coreaudio_pcmio.h.
|
private |
Definition at line 184 of file coreaudio_pcmio.h.
|
private |
Definition at line 177 of file coreaudio_pcmio.h.
|
private |
Definition at line 213 of file coreaudio_pcmio.h.
|
private |
Definition at line 212 of file coreaudio_pcmio.h.
|
private |
Definition at line 190 of file coreaudio_pcmio.h.
|
private |
Definition at line 189 of file coreaudio_pcmio.h.
|
private |
Definition at line 178 of file coreaudio_pcmio.h.
|
private |
Definition at line 224 of file coreaudio_pcmio.h.
|
private |
Definition at line 225 of file coreaudio_pcmio.h.
|
private |
Definition at line 220 of file coreaudio_pcmio.h.
|
private |
Definition at line 229 of file coreaudio_pcmio.h.
|
private |
Definition at line 198 of file coreaudio_pcmio.h.
|
private |
Definition at line 223 of file coreaudio_pcmio.h.
|
private |
Definition at line 201 of file coreaudio_pcmio.h.
|
private |
Definition at line 200 of file coreaudio_pcmio.h.
|
private |
Definition at line 204 of file coreaudio_pcmio.h.
|
private |
Definition at line 203 of file coreaudio_pcmio.h.
|
private |
Definition at line 207 of file coreaudio_pcmio.h.
|
private |
Definition at line 206 of file coreaudio_pcmio.h.
|
private |
Definition at line 192 of file coreaudio_pcmio.h.
|
private |
Definition at line 179 of file coreaudio_pcmio.h.
|
private |
Definition at line 221 of file coreaudio_pcmio.h.
|
private |
Definition at line 226 of file coreaudio_pcmio.h.
|
private |
Definition at line 193 of file coreaudio_pcmio.h.
|
private |
Definition at line 180 of file coreaudio_pcmio.h.
|
private |
Definition at line 222 of file coreaudio_pcmio.h.
|
private |
Definition at line 227 of file coreaudio_pcmio.h.
|
private |
Definition at line 191 of file coreaudio_pcmio.h.
|
private |
Definition at line 196 of file coreaudio_pcmio.h.
|
private |
Definition at line 195 of file coreaudio_pcmio.h.
|
private |
Definition at line 216 of file coreaudio_pcmio.h.
|
private |
Definition at line 215 of file coreaudio_pcmio.h.
|
private |
Definition at line 188 of file coreaudio_pcmio.h.
|
private |
Definition at line 186 of file coreaudio_pcmio.h.
|
private |
Definition at line 210 of file coreaudio_pcmio.h.
|
private |
Definition at line 209 of file coreaudio_pcmio.h.