diff options
author | Marcelo Fernandez <marcelofg55@gmail.com> | 2017-07-16 22:29:47 -0300 |
---|---|---|
committer | Marcelo Fernandez <marcelofg55@gmail.com> | 2017-07-16 23:35:23 -0300 |
commit | 764f6076119310061061ada90c9c57a5c531be9e (patch) | |
tree | 25ba8f6fc40c3af3a5c9a575d2dced85c5246469 /platform/osx/audio_driver_osx.h | |
parent | 4366b7c8b0bf452236cdfd034d3a0e5d851576b9 (diff) | |
download | redot-engine-764f6076119310061061ada90c9c57a5c531be9e.tar.gz |
Reinit audio device when the system default device changes on OS X
Diffstat (limited to 'platform/osx/audio_driver_osx.h')
-rw-r--r-- | platform/osx/audio_driver_osx.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/platform/osx/audio_driver_osx.h b/platform/osx/audio_driver_osx.h index 9b48dab405..d6d00b7970 100644 --- a/platform/osx/audio_driver_osx.h +++ b/platform/osx/audio_driver_osx.h @@ -35,10 +35,12 @@ #include "servers/audio_server.h" #include <AudioUnit/AudioUnit.h> +#include <CoreAudio/AudioHardware.h> class AudioDriverOSX : public AudioDriver { AudioComponentInstance audio_unit; + AudioObjectPropertyAddress outputDeviceAddress; bool active; Mutex *mutex; @@ -52,6 +54,9 @@ class AudioDriverOSX : public AudioDriver { UInt32 inBusNumber, UInt32 inNumberFrames, AudioBufferList *ioData); + Error initDevice(); + Error finishDevice(); + public: const char *get_name() const { return "AudioUnit"; @@ -65,6 +70,8 @@ public: virtual void unlock(); virtual void finish(); + Error reopen(); + AudioDriverOSX(); ~AudioDriverOSX(); }; |