26AudioIODeviceType::AudioIODeviceType (
const String& name)
57#if JUCE_WINDOWS && JUCE_WASAPI
62 if (windowsVersion < SystemStats::WinVista
63 || (WasapiClasses::isLowLatencyMode (deviceMode) && windowsVersion < SystemStats::Windows10))
66 return new WasapiClasses::WASAPIAudioIODeviceType (deviceMode);
69 AudioIODeviceType* AudioIODeviceType::createAudioIODeviceType_WASAPI (
bool exclusiveMode)
71 return createAudioIODeviceType_WASAPI (exclusiveMode ? WASAPIDeviceMode::exclusive
72 : WASAPIDeviceMode::shared);
79#if JUCE_WINDOWS && JUCE_DIRECTSOUND
80 AudioIODeviceType* AudioIODeviceType::createAudioIODeviceType_DirectSound() {
return new DSoundAudioIODeviceType(); }
85#if JUCE_WINDOWS && JUCE_ASIO
91#if (JUCE_LINUX || JUCE_BSD) && JUCE_ALSA
97#if (JUCE_LINUX || JUCE_BSD) && JUCE_JACK
103#if JUCE_LINUX && JUCE_BELA
112 #if JUCE_USE_ANDROID_OBOE
113 if (isOboeAvailable())
117 #if JUCE_USE_ANDROID_OPENSLES
118 if (isOpenSLAvailable())
122 return new AndroidAudioIODeviceType();
128#if JUCE_ANDROID && JUCE_USE_ANDROID_OPENSLES
131 return isOpenSLAvailable() ?
new OpenSLAudioDeviceType() : nullptr;
137#if JUCE_ANDROID && JUCE_USE_ANDROID_OBOE
140 return isOboeAvailable() ?
new OboeAudioIODeviceType() : nullptr;
virtual void audioDeviceListChanged()=0
static AudioIODeviceType * createAudioIODeviceType_WASAPI(WASAPIDeviceMode deviceMode)
static AudioIODeviceType * createAudioIODeviceType_ASIO()
static AudioIODeviceType * createAudioIODeviceType_Oboe()
static AudioIODeviceType * createAudioIODeviceType_JACK()
static AudioIODeviceType * createAudioIODeviceType_DirectSound()
void removeListener(Listener *listener)
static AudioIODeviceType * createAudioIODeviceType_Android()
static AudioIODeviceType * createAudioIODeviceType_OpenSLES()
static AudioIODeviceType * createAudioIODeviceType_CoreAudio()
void callDeviceChangeListeners()
static AudioIODeviceType * createAudioIODeviceType_Bela()
void addListener(Listener *listener)
virtual ~AudioIODeviceType()
static AudioIODeviceType * createAudioIODeviceType_ALSA()
static AudioIODeviceType * createAudioIODeviceType_iOSAudio()
static OperatingSystemType getOperatingSystemType()