summaryrefslogtreecommitdiffstats
path: root/services/audioflinger/FastMixer.h
diff options
context:
space:
mode:
authorAndy Hung <hunga@google.com>2014-05-23 21:22:17 -0700
committerAndy Hung <hunga@google.com>2014-05-29 18:17:02 -0700
commit1258c1ab592a899fabb1e31eb5db2ef413b6f38a (patch)
tree17bd7e0084b3089a8a66afeaf9a560a58ef4715d /services/audioflinger/FastMixer.h
parent798ce934571bc7eb5715bf1c03cbe5436a1220e3 (diff)
downloadframeworks_av-1258c1ab592a899fabb1e31eb5db2ef413b6f38a.zip
frameworks_av-1258c1ab592a899fabb1e31eb5db2ef413b6f38a.tar.gz
frameworks_av-1258c1ab592a899fabb1e31eb5db2ef413b6f38a.tar.bz2
Add multiple format capability to FastMixer
Floating point data from MixerThread into FastMixer. Multiple output format capability from FastMixer to Sink. Change-Id: I0da17810ee71381a39a006c46faec71108d22c26
Diffstat (limited to 'services/audioflinger/FastMixer.h')
-rw-r--r--services/audioflinger/FastMixer.h10
1 files changed, 9 insertions, 1 deletions
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;