summaryrefslogtreecommitdiffstats
path: root/services/audioflinger
diff options
context:
space:
mode:
authorGlenn Kasten <gkasten@google.com>2012-03-08 12:33:37 -0800
committerGlenn Kasten <gkasten@google.com>2012-10-26 15:50:45 -0700
commit599fabc596687efa4b71b8f3ebbb957c7cae0c72 (patch)
tree4fa21abc3355a8ac8d4c91a6e101d76bb3c17b80 /services/audioflinger
parent692c3e54c63aaaf7e9ef4d89761f98975bd34f33 (diff)
downloadframeworks_av-599fabc596687efa4b71b8f3ebbb957c7cae0c72.zip
frameworks_av-599fabc596687efa4b71b8f3ebbb957c7cae0c72.tar.gz
frameworks_av-599fabc596687efa4b71b8f3ebbb957c7cae0c72.tar.bz2
Document AudioMixer hard-coded limits
Change-Id: I83ea8bed375f251260945db788bdb5f280dba12d
Diffstat (limited to 'services/audioflinger')
-rw-r--r--services/audioflinger/AudioMixer.cpp6
-rw-r--r--services/audioflinger/AudioMixer.h7
2 files changed, 13 insertions, 0 deletions
diff --git a/services/audioflinger/AudioMixer.cpp b/services/audioflinger/AudioMixer.cpp
index e652d14..a4ed445 100644
--- a/services/audioflinger/AudioMixer.cpp
+++ b/services/audioflinger/AudioMixer.cpp
@@ -106,6 +106,12 @@ AudioMixer::AudioMixer(size_t frameCount, uint32_t sampleRate, uint32_t maxNumTr
ALOG_ASSERT(maxNumTracks <= MAX_NUM_TRACKS, "maxNumTracks %u > MAX_NUM_TRACKS %u",
maxNumTracks, MAX_NUM_TRACKS);
+ // AudioMixer is not yet capable of more than 32 active track inputs
+ ALOG_ASSERT(32 >= MAX_NUM_TRACKS, "bad MAX_NUM_TRACKS %d", MAX_NUM_TRACKS);
+
+ // AudioMixer is not yet capable of multi-channel output beyond stereo
+ ALOG_ASSERT(2 == MAX_NUM_CHANNELS, "bad MAX_NUM_CHANNELS %d", MAX_NUM_CHANNELS);
+
LocalClock lc;
pthread_once(&sOnceControl, &sInitRoutine);
diff --git a/services/audioflinger/AudioMixer.h b/services/audioflinger/AudioMixer.h
index dc468ff..e60a298 100644
--- a/services/audioflinger/AudioMixer.h
+++ b/services/audioflinger/AudioMixer.h
@@ -41,8 +41,15 @@ public:
/*virtual*/ ~AudioMixer(); // non-virtual saves a v-table, restore if sub-classed
+
+ // This mixer has a hard-coded upper limit of 32 active track inputs.
+ // Adding support for > 32 tracks would require more than simply changing this value.
static const uint32_t MAX_NUM_TRACKS = 32;
// maximum number of channels supported by the mixer
+
+ // This mixer has a hard-coded upper limit of 2 channels for output.
+ // There is support for > 2 channel tracks down-mixed to 2 channel output via a down-mix effect.
+ // Adding support for > 2 channel output would require more than simply changing this value.
static const uint32_t MAX_NUM_CHANNELS = 2;
// maximum number of channels supported for the content
static const uint32_t MAX_NUM_CHANNELS_TO_DOWNMIX = 8;