48void AudioAppComponent::setAudioChannels (
int numInputChannels,
int numOutputChannels,
const XmlElement*
const xml)
52 if (usingCustomDeviceManager && xml ==
nullptr)
54 auto setup = deviceManager.getAudioDeviceSetup();
56 if (setup.inputChannels.countNumberOfSetBits() != numInputChannels
57 || setup.outputChannels.countNumberOfSetBits() != numOutputChannels)
59 setup.inputChannels.
clear();
60 setup.outputChannels.clear();
62 setup.inputChannels.setRange (0, numInputChannels,
true);
63 setup.outputChannels.setRange (0, numOutputChannels,
true);
65 audioError = deviceManager.setAudioDeviceSetup (setup,
false);
70 audioError = deviceManager.initialise (numInputChannels, numOutputChannels, xml,
true);
75 deviceManager.addAudioCallback (&audioSourcePlayer);
76 audioSourcePlayer.setSource (
this);
79void AudioAppComponent::shutdownAudio()
81 audioSourcePlayer.setSource (
nullptr);
82 deviceManager.removeAudioCallback (&audioSourcePlayer);
85 if (! usingCustomDeviceManager)
86 deviceManager.closeAudioDevice();