From 1258c1ab592a899fabb1e31eb5db2ef413b6f38a Mon Sep 17 00:00:00 2001 From: Andy Hung Date: Fri, 23 May 2014 21:22:17 -0700 Subject: Add multiple format capability to FastMixer Floating point data from MixerThread into FastMixer. Multiple output format capability from FastMixer to Sink. Change-Id: I0da17810ee71381a39a006c46faec71108d22c26 --- services/audioflinger/FastMixer.h | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'services/audioflinger/FastMixer.h') diff --git a/services/audioflinger/FastMixer.h b/services/audioflinger/FastMixer.h index db3e2c9..4671670 100644 --- a/services/audioflinger/FastMixer.h +++ b/services/audioflinger/FastMixer.h @@ -61,7 +61,15 @@ private: NBAIO_Sink *outputSink; int outputSinkGen; AudioMixer* mixer; - short *mMixerBuffer; + + // mSinkBuffer audio format is stored in format.mFormat. + void* mSinkBuffer; // used for mixer output format translation + // if sink format is different than mixer output. + size_t mSinkBufferSize; + void* mMixerBuffer; // mixer output buffer. + size_t mMixerBufferSize; + audio_format_t mMixerBufferFormat; // mixer output format: AUDIO_FORMAT_PCM_(16_BIT|FLOAT). + enum {UNDEFINED, MIXED, ZEROED} mMixerBufferState; NBAIO_Format format; unsigned sampleRate; -- cgit v1.1