Updates to Wilhelm's use of fast tracks
Move volume and mute/solo interfaces from blacklist to whitelist.
Remove hard-coded frame count; this is now done at a lower level.
Change-Id: Ie9b48941df799dd8cba45dc7015d62e5adb76f5d
diff --git a/src/android/AudioPlayer_to_android.cpp b/src/android/AudioPlayer_to_android.cpp
index 0e371bd..875c6ee 100644
--- a/src/android/AudioPlayer_to_android.cpp
+++ b/src/android/AudioPlayer_to_android.cpp
@@ -1368,11 +1368,9 @@
MPH_EFFECTSEND,
MPH_ENVIRONMENTALREVERB,
MPH_EQUALIZER,
- MPH_MUTESOLO, // FIXME move to whitelist when implemented by server
MPH_PLAYBACKRATE,
MPH_PRESETREVERB,
MPH_VIRTUALIZER,
- MPH_VOLUME, // FIXME move to whitelist when implemented by server
MPH_ANDROIDEFFECT,
MPH_ANDROIDEFFECTSEND,
// FIXME The problem with a blacklist is remembering to add new interfaces here
@@ -1388,10 +1386,12 @@
static const unsigned whitelist[] = {
MPH_BUFFERQUEUE,
MPH_DYNAMICINTERFACEMANAGEMENT,
- MPH_OBJECT,
MPH_METADATAEXTRACTION,
+ MPH_MUTESOLO,
+ MPH_OBJECT,
MPH_PLAY,
MPH_PREFETCHSTATUS,
+ MPH_VOLUME,
MPH_ANDROIDCONFIGURATION,
MPH_ANDROIDSIMPLEBUFFERQUEUE,
MPH_ANDROIDBUFFERQUEUESOURCE,
@@ -1443,13 +1443,10 @@
uint32_t sampleRate = sles_to_android_sampleRate(df_pcm->samplesPerSec);
- size_t frameCount;
audio_policy_output_flags_t policy;
if (canUseFastTrack(pAudioPlayer)) {
- frameCount = 512; // FIXME hard-coded
policy = AUDIO_POLICY_OUTPUT_FLAG_FAST;
} else {
- frameCount = 0;
policy = AUDIO_POLICY_OUTPUT_FLAG_NONE;
}
@@ -1459,7 +1456,7 @@
sles_to_android_sampleFormat(df_pcm->bitsPerSample), // format
sles_to_android_channelMaskOut(df_pcm->numChannels, df_pcm->channelMask),
// channel mask
- frameCount, // frameCount
+ 0, // frameCount
policy, // flags
audioTrack_callBack_pullFromBuffQueue, // callback
(void *) pAudioPlayer, // user