Represents a type of audio driver, such as DirectSound, ASIO, CoreAudio, etc.
To get a list of available audio driver types, use the AudioDeviceManager::createAudioDeviceTypes() method. Each of the objects returned can then be used to list the available devices of that type. E.g.
For an easier way of managing audio devices and their settings, have a look at the AudioDeviceManager class.
Classes | |
| class | Listener |
| A class for receiving events when audio devices are inserted or removed. More... | |
Public Member Functions | |
| const String & | getTypeName () const noexcept |
| Returns the name of this type of driver that this object manages. | |
| virtual void | scanForDevices ()=0 |
| Refreshes the object's cached list of known devices. | |
| virtual StringArray | getDeviceNames (bool wantInputNames=false) const =0 |
| Returns the list of available devices of this type. | |
| virtual int | getDefaultDeviceIndex (bool forInput) const =0 |
| Returns the name of the default device. | |
| virtual int | getIndexOfDevice (AudioIODevice *device, bool asInput) const =0 |
| Returns the index of a given device in the list of device names. | |
| virtual bool | hasSeparateInputsAndOutputs () const =0 |
| Returns true if two different devices can be used for the input and output. | |
| virtual AudioIODevice * | createDevice (const String &outputDeviceName, const String &inputDeviceName)=0 |
| Creates one of the devices of this type. | |
| void | addListener (Listener *listener) |
| Adds a listener that will be called when this type of device is added or removed from the system. | |
| void | removeListener (Listener *listener) |
| Removes a listener that was previously added with addListener(). | |
| virtual | ~AudioIODeviceType () |
| Destructor. | |
Static Public Member Functions | |
| static AudioIODeviceType * | createAudioIODeviceType_CoreAudio () |
| Creates a CoreAudio device type if it's available on this platform, or returns null. | |
| static AudioIODeviceType * | createAudioIODeviceType_iOSAudio () |
| Creates an iOS device type if it's available on this platform, or returns null. | |
| static AudioIODeviceType * | createAudioIODeviceType_WASAPI (WASAPIDeviceMode deviceMode) |
| Creates a WASAPI device type in the specified mode if it's available on this platform, or returns null. | |
| static AudioIODeviceType * | createAudioIODeviceType_DirectSound () |
| Creates a DirectSound device type if it's available on this platform, or returns null. | |
| static AudioIODeviceType * | createAudioIODeviceType_ASIO () |
| Creates an ASIO device type if it's available on this platform, or returns null. | |
| static AudioIODeviceType * | createAudioIODeviceType_ALSA () |
| Creates an ALSA device type if it's available on this platform, or returns null. | |
| static AudioIODeviceType * | createAudioIODeviceType_JACK () |
| Creates a JACK device type if it's available on this platform, or returns null. | |
| static AudioIODeviceType * | createAudioIODeviceType_Android () |
| Creates an Android device type if it's available on this platform, or returns null. | |
| static AudioIODeviceType * | createAudioIODeviceType_OpenSLES () |
| Creates an Android OpenSLES device type if it's available on this platform, or returns null. | |
| static AudioIODeviceType * | createAudioIODeviceType_Oboe () |
| Creates an Oboe device type if it's available on this platform, or returns null. | |
| static AudioIODeviceType * | createAudioIODeviceType_Bela () |
| Creates a Bela device type if it's available on this platform, or returns null. | |
Protected Member Functions | |
| AudioIODeviceType (const String &typeName) | |
| void | callDeviceChangeListeners () |
| Synchronously calls all the registered device list change listeners. | |
|
virtual |
Destructor.
|
explicitprotected |
Referenced by callDeviceChangeListeners(), createAudioIODeviceType_ALSA(), createAudioIODeviceType_Android(), createAudioIODeviceType_ASIO(), createAudioIODeviceType_Bela(), createAudioIODeviceType_CoreAudio(), createAudioIODeviceType_DirectSound(), createAudioIODeviceType_iOSAudio(), createAudioIODeviceType_JACK(), createAudioIODeviceType_Oboe(), createAudioIODeviceType_OpenSLES(), and createAudioIODeviceType_WASAPI().
|
inlinenoexcept |
Returns the name of this type of driver that this object manages.
This will be something like "DirectSound", "ASIO", "CoreAudio", "ALSA", etc.
|
pure virtual |
Refreshes the object's cached list of known devices.
This must be called at least once before calling getDeviceNames() or any of the other device creation methods.
|
pure virtual |
Returns the list of available devices of this type.
The scanForDevices() method must have been called to create this list.
| wantInputNames | for devices which have separate inputs and outputs this determines which list of names is returned |
|
pure virtual |
Returns the name of the default device.
This will be one of the names from the getDeviceNames() list.
| forInput | if true, this means that a default input device should be returned; if false, it should return the default output |
|
pure virtual |
Returns the index of a given device in the list of device names.
If asInput is true, it shows the index in the inputs list, otherwise it looks for it in the outputs list.
|
pure virtual |
Returns true if two different devices can be used for the input and output.
|
pure virtual |
Creates one of the devices of this type.
The deviceName must be one of the strings returned by getDeviceNames(), and scanForDevices() must have been called before this method is used.
| void juce::AudioIODeviceType::addListener | ( | Listener * | listener | ) |
Adds a listener that will be called when this type of device is added or removed from the system.
| void juce::AudioIODeviceType::removeListener | ( | Listener * | listener | ) |
Removes a listener that was previously added with addListener().
|
static |
Creates a CoreAudio device type if it's available on this platform, or returns null.
References AudioIODeviceType().
|
static |
Creates an iOS device type if it's available on this platform, or returns null.
References AudioIODeviceType().
|
static |
Creates a WASAPI device type in the specified mode if it's available on this platform, or returns null.
References AudioIODeviceType().
Referenced by createAudioIODeviceType_Bela().
|
static |
Creates a DirectSound device type if it's available on this platform, or returns null.
References AudioIODeviceType().
|
static |
Creates an ASIO device type if it's available on this platform, or returns null.
References AudioIODeviceType().
|
static |
Creates an ALSA device type if it's available on this platform, or returns null.
References AudioIODeviceType().
|
static |
Creates a JACK device type if it's available on this platform, or returns null.
References AudioIODeviceType().
|
static |
Creates an Android device type if it's available on this platform, or returns null.
References AudioIODeviceType().
|
static |
Creates an Android OpenSLES device type if it's available on this platform, or returns null.
References AudioIODeviceType().
|
static |
Creates an Oboe device type if it's available on this platform, or returns null.
References AudioIODeviceType().
|
static |
Creates a Bela device type if it's available on this platform, or returns null.
References AudioIODeviceType(), and createAudioIODeviceType_WASAPI().
|
protected |
Synchronously calls all the registered device list change listeners.
References AudioIODeviceType().