#include <juce_ios_Audio.h>
Public Member Functions | |
void | close () override |
Closes and releases the device if it's open. More... | |
BigInteger | getActiveInputChannels () const override |
Returns a mask showing which of the available input channels are currently enabled. More... | |
BigInteger | getActiveOutputChannels () const override |
Returns a mask showing which of the available output channels are currently enabled. More... | |
AudioPlayHead * | getAudioPlayHead () const |
Array< int > | getAvailableBufferSizes () override |
Returns the set of buffer sizes that are available. More... | |
Array< double > | getAvailableSampleRates () override |
Returns the set of sample-rates this device supports. More... | |
int | getCurrentBitDepth () override |
Returns the device's current physical bit-depth. More... | |
int | getCurrentBufferSizeSamples () override |
Returns the buffer size that the device is currently using. More... | |
double | getCurrentSampleRate () override |
Returns the sample rate that the device is currently using. More... | |
int | getDefaultBufferSize () override |
Returns the default buffer-size to use. More... | |
StringArray | getInputChannelNames () override |
Returns the names of all the available input channels on this device. More... | |
int | getInputLatencyInSamples () override |
Returns the device's input latency. More... | |
String | getLastError () override |
Returns the last error that happened if anything went wrong. More... | |
const String & | getName () const noexcept |
Returns the device's name, (as set in the constructor). More... | |
StringArray | getOutputChannelNames () override |
Returns the names of all the available output channels on this device. More... | |
int | getOutputLatencyInSamples () override |
Returns the device's output latency. More... | |
const String & | getTypeName () const noexcept |
Returns the type of the device. More... | |
int | getXRunCount () const noexcept override |
Returns the number of under- or over runs reported by the OS since playback/recording has started. More... | |
virtual bool | hasControlPanel () const |
True if this device can show a pop-up control panel for editing its settings. More... | |
bool | isInterAppAudioConnected () const |
bool | isOpen () override |
Returns true if the device is still open. More... | |
bool | isPlaying () override |
Returns true if the device is still calling back. More... | |
String | open (const BigInteger &, const BigInteger &, double, int) override |
Tries to open the device ready to play. More... | |
bool | setAudioPreprocessingEnabled (bool) override |
On devices which support it, this allows automatic gain control or other mic processing to be disabled. More... | |
void | setMidiMessageCollector (MidiMessageCollector *) |
virtual bool | showControlPanel () |
Shows a device-specific control panel if there is one. More... | |
void | start (AudioIODeviceCallback *) override |
Starts the device actually playing. More... | |
void | stop () override |
Stops the device playing. More... | |
void | switchApplication () |
Protected Attributes | |
String | name |
String | typeName |
Private Member Functions | |
iOSAudioIODevice (iOSAudioIODeviceType *, const String &, const String &) | |
Private Attributes | |
std::unique_ptr< Pimpl > | pimpl |
Friends | |
struct | AudioSessionHolder |
class | iOSAudioIODeviceType |
|
private |
|
overridevirtual |
Closes and releases the device if it's open.
Implements juce::AudioIODevice.
|
overridevirtual |
Returns a mask showing which of the available input channels are currently enabled.
Implements juce::AudioIODevice.
|
overridevirtual |
Returns a mask showing which of the available output channels are currently enabled.
Implements juce::AudioIODevice.
AudioPlayHead* juce::iOSAudioIODevice::getAudioPlayHead | ( | ) | const |
Returns the set of buffer sizes that are available.
Implements juce::AudioIODevice.
|
overridevirtual |
Returns the set of sample-rates this device supports.
Implements juce::AudioIODevice.
|
overridevirtual |
Returns the device's current physical bit-depth.
If the device isn't actually open, this value doesn't really mean much.
Implements juce::AudioIODevice.
|
overridevirtual |
Returns the buffer size that the device is currently using.
If the device isn't actually open, this value doesn't really mean much.
Implements juce::AudioIODevice.
|
overridevirtual |
Returns the sample rate that the device is currently using.
If the device isn't actually open, this value doesn't really mean much.
Implements juce::AudioIODevice.
|
overridevirtual |
Returns the default buffer-size to use.
Implements juce::AudioIODevice.
|
overridevirtual |
Returns the names of all the available input channels on this device.
To find out which of these are currently in use, call getActiveInputChannels().
Implements juce::AudioIODevice.
|
overridevirtual |
Returns the device's input latency.
This is the delay in samples between some audio actually arriving at the soundcard, and the callback getting passed this block of data.
Implements juce::AudioIODevice.
|
overridevirtual |
Returns the last error that happened if anything went wrong.
Implements juce::AudioIODevice.
|
inlinenoexceptinherited |
Returns the device's name, (as set in the constructor).
References juce::gl::name.
|
overridevirtual |
Returns the names of all the available output channels on this device.
To find out which of these are currently in use, call getActiveOutputChannels().
Implements juce::AudioIODevice.
|
overridevirtual |
Returns the device's output latency.
This is the delay in samples between a callback getting a block of data, and that data actually getting played.
Implements juce::AudioIODevice.
|
inlinenoexceptinherited |
Returns the type of the device.
E.g. "CoreAudio", "ASIO", etc. - this comes from the AudioIODeviceType that created it.
|
overridevirtualnoexcept |
Returns the number of under- or over runs reported by the OS since playback/recording has started.
This number may be different than determining the Xrun count manually (by measuring the time spent in the audio callback) as the OS may be doing some buffering internally - especially on mobile devices.
Returns -1 if playback/recording has not started yet or if getting the underrun count is not supported for this device (Android SDK 23 and lower).
Reimplemented from juce::AudioIODevice.
|
virtualinherited |
True if this device can show a pop-up control panel for editing its settings.
This is generally just true of ASIO devices. If true, you can call showControlPanel() to display it.
bool juce::iOSAudioIODevice::isInterAppAudioConnected | ( | ) | const |
|
overridevirtual |
Returns true if the device is still open.
A device might spontaneously close itself if something goes wrong, so this checks if it's still open.
Implements juce::AudioIODevice.
|
overridevirtual |
Returns true if the device is still calling back.
The device might mysteriously stop, so this checks whether it's still playing.
Implements juce::AudioIODevice.
|
overridevirtual |
Tries to open the device ready to play.
inputChannels | a BigInteger in which a set bit indicates that the corresponding input channel should be enabled |
outputChannels | a BigInteger in which a set bit indicates that the corresponding output channel should be enabled |
sampleRate | the sample rate to try to use - to find out which rates are available, see getAvailableSampleRates() |
bufferSizeSamples | the size of i/o buffer to use - to find out the available buffer sizes, see getAvailableBufferSizes() |
Implements juce::AudioIODevice.
On devices which support it, this allows automatic gain control or other mic processing to be disabled.
If the device doesn't support this operation, it'll return false.
Reimplemented from juce::AudioIODevice.
void juce::iOSAudioIODevice::setMidiMessageCollector | ( | MidiMessageCollector * | ) |
|
virtualinherited |
Shows a device-specific control panel if there is one.
This should only be called for devices which return true from hasControlPanel().
|
overridevirtual |
Starts the device actually playing.
This must be called after the device has been opened.
callback | the callback to use for streaming the data. |
Implements juce::AudioIODevice.
|
overridevirtual |
Stops the device playing.
Once a device has been started, this will stop it. Any pending calls to the callback class will be flushed before this method returns.
Implements juce::AudioIODevice.
void juce::iOSAudioIODevice::switchApplication | ( | ) |
|
friend |
|
friend |
|
protectedinherited |
|
private |
|
protectedinherited |