Make max fast tracks configurable using a property
ro.audio.max_fast_tracks
Rename the currently configured maximum number of fast tracks
from FastMixerState::kMaxFastTracks to FastMixerState::sMaxFastTracks.
There is no guarantee that the CPU will be able to handle
the configured number of fast tracks.
Bug: 27564141
Change-Id: If9af226d839b226503488c3cb20a4bb8950b429d
diff --git a/services/audioflinger/FastMixer.cpp b/services/audioflinger/FastMixer.cpp
index 26cd1f9..546ef25 100644
--- a/services/audioflinger/FastMixer.cpp
+++ b/services/audioflinger/FastMixer.cpp
@@ -77,7 +77,7 @@
mSinkChannelMask = audio_channel_out_mask_from_count(mSinkChannelCount);
unsigned i;
- for (i = 0; i < FastMixerState::kMaxFastTracks; ++i) {
+ for (i = 0; i < FastMixerState::sMaxFastTracks; ++i) {
mFastTrackNames[i] = -1;
mGenerations[i] = 0;
}
@@ -187,7 +187,7 @@
// FIXME new may block for unbounded time at internal mutex of the heap
// implementation; it would be better to have normal mixer allocate for us
// to avoid blocking here and to prevent possible priority inversion
- mMixer = new AudioMixer(frameCount, mSampleRate, FastMixerState::kMaxFastTracks);
+ mMixer = new AudioMixer(frameCount, mSampleRate, FastMixerState::sMaxFastTracks);
const size_t mixerFrameSize = mSinkChannelCount
* audio_bytes_per_sample(mMixerBufferFormat);
mMixerBufferSize = mixerFrameSize * frameCount;
@@ -214,7 +214,7 @@
}
mMixerBufferState = UNDEFINED;
#if !LOG_NDEBUG
- for (unsigned i = 0; i < FastMixerState::kMaxFastTracks; ++i) {
+ for (unsigned i = 0; i < FastMixerState::sMaxFastTracks; ++i) {
mFastTrackNames[i] = -1;
}
#endif