I’ve been (co-)developing an application that has it’s own audio-preferences panel, similar to the AudioDeviceSelectorComponent. During my tests with different ASIO devices, I’ve noticed that when calling AudioIODevice::showControlPanel(), some devices tend to block until the panel has been closed again and some don’t.
In the time that this panel is open, all sort of settings can be changed, but there doesn’t seem to be a way to retrieve these changes. Therefore, there’s no way to display the changes in my preferences panel.
When the call to show the panel is blocking, it’s easy to acces the new settings by means of AudioDevice::getCurrentSampleRate etc. etc…
This method is unusable when the call is nonblocking though, because there’s no way of thelling when the changes have been made.
It would seem logical that any changes in the device would result in a call to AudioIODeviceCallback::audioDeviceAboutToStart(AudioIODevice *device), with device containing the new settings… but the call to ShowControlPanel also closes the device without reopening it… This has the sideeffect of me having to change something in my panel to reopen the device again…
Is there any solution to this problem? I’m using Juce Rev. 551.