Limit AudioFlinger mixer track sampling rate.

When changing the audio output stream sampling rate with setParameters() make sure that all tracks have a sampling rate less or equal to 2 times the new output sampling rate.
This commit is contained in:
Eric Laurent
2009-08-10 08:15:12 -07:00
parent 36093d4e5f
commit 6f7e097ee5

View File

@@ -1512,6 +1512,10 @@ bool AudioFlinger::MixerThread::checkForNewParameters_l()
int name = getTrackName_l();
if (name < 0) break;
mTracks[i]->mName = name;
// limit track sample rate to 2 x new output sample rate
if (mTracks[i]->mCblk->sampleRate > 2 * sampleRate()) {
mTracks[i]->mCblk->sampleRate = 2 * sampleRate();
}
}
sendConfigEvent_l(AudioSystem::OUTPUT_CONFIG_CHANGED);
}