I justed updated to the latest juce, from a version a few months old. In the simiulator my audio devices are opening at 8000hz instead of 44100hz.
Looking into the code,
currentSetup.sampleRate = chooseBestSampleRate (newSetup.sampleRate);
is called before
updateSampleRates();
In chooseBestSampleRate, since rates is empty, when rates[0] is returned it returns garbage data. I'm assuming by some coincendece due to memory layout it used to return 44100, now it returns 8000.
double AudioDeviceManager::chooseBestSampleRate (double rate) const { jassert (currentAudioDevice != nullptr); const Array<double> rates (currentAudioDevice->getAvailableSampleRates()); if (rate > 0 && rates.contains (rate)) return rate; double lowestAbove44 = 0.0; for (int i = rates.size(); --i >= 0;) { const double sr = rates[i]; if (sr >= 44100.0 && (lowestAbove44 < 1.0 || sr < lowestAbove44)) lowestAbove44 = sr; } if (lowestAbove44 > 0.0) return lowestAbove44; return rates[0]; }