29#ifndef COREAUDIO_DRIVER_H
30#define COREAUDIO_DRIVER_H
35#if defined(H2CORE_HAVE_COREAUDIO) || _DOXYGEN_
36#include <AudioUnit/AudioUnit.h>
37#include <AudioToolbox/AudioToolbox.h>
38#include <AudioUnit/AudioComponent.h>
49#if defined(H2CORE_HAVE_COREAUDIO) || _DOXYGEN_
69 virtual int init(
unsigned nBufferSize )
override;
90 static QString
deviceName( AudioDeviceID deviceID );
virtual void disconnect() override
virtual float * getOut_L() override
virtual int init(unsigned nBufferSize) override
virtual int getLatency() override
Approximate audio latency (in frames) A reasonable approximation is the buffer time on most audio sys...
virtual float * getOut_R() override
virtual unsigned getBufferSize() override
audioProcessCallback mProcessCallback
virtual int connect() override
static QStringList getDevices()
AudioDeviceID preferredOutputDevice()
void retrieveBufferSize(void)
static QString deviceName(AudioDeviceID deviceID)
AudioDeviceID defaultOutputDevice(void)
static std::vector< AudioDeviceID > outputDeviceIDs()
AudioDeviceID m_outputDevice
virtual unsigned getSampleRate() override
void printStreamInfo(void)
virtual ~CoreAudioDriver()
CoreAudioDriver(audioProcessCallback processCallback)
int(* audioProcessCallback)(uint32_t, void *)