summaryrefslogtreecommitdiffstats
path: root/media/libstagefright/AudioSource.cpp
diff options
context:
space:
mode:
authorJames Dong <jdong@google.com>2010-06-14 17:45:35 -0700
committerJames Dong <jdong@google.com>2010-06-14 17:45:35 -0700
commitbe6ec71af2d12e2a55f2f0b1b77d3fa5d593a1c7 (patch)
treef5d5c615025aa44ac5bb825fd4388c446366fc53 /media/libstagefright/AudioSource.cpp
parent8aa8fe5ea704b05d8f0ab3d7bf18de18151f1b50 (diff)
downloadframeworks_av-be6ec71af2d12e2a55f2f0b1b77d3fa5d593a1c7.zip
frameworks_av-be6ec71af2d12e2a55f2f0b1b77d3fa5d593a1c7.tar.gz
frameworks_av-be6ec71af2d12e2a55f2f0b1b77d3fa5d593a1c7.tar.bz2
Remove hard-coded number of audio channels in AudioSource
Change-Id: I5f362252c25e2251bbfa9818b711ee23b4975248
Diffstat (limited to 'media/libstagefright/AudioSource.cpp')
-rw-r--r--media/libstagefright/AudioSource.cpp18
1 files changed, 14 insertions, 4 deletions
diff --git a/media/libstagefright/AudioSource.cpp b/media/libstagefright/AudioSource.cpp
index 9717aa6..d6020a6 100644
--- a/media/libstagefright/AudioSource.cpp
+++ b/media/libstagefright/AudioSource.cpp
@@ -33,15 +33,25 @@ namespace android {
AudioSource::AudioSource(
int inputSource, uint32_t sampleRate, uint32_t channels)
- : mRecord(new AudioRecord(
- inputSource, sampleRate, AudioSystem::PCM_16_BIT, channels)),
- mInitCheck(mRecord->initCheck()),
- mStarted(false),
+ : mStarted(false),
mCollectStats(false),
mTotalReadTimeUs(0),
mTotalReadBytes(0),
mTotalReads(0),
mGroup(NULL) {
+
+ LOGV("sampleRate: %d, channels: %d", sampleRate, channels);
+ uint32_t flags = AudioRecord::RECORD_AGC_ENABLE |
+ AudioRecord::RECORD_NS_ENABLE |
+ AudioRecord::RECORD_IIR_ENABLE;
+
+ mRecord = new AudioRecord(
+ inputSource, sampleRate, AudioSystem::PCM_16_BIT,
+ channels > 1? AudioSystem::CHANNEL_IN_STEREO: AudioSystem::CHANNEL_IN_MONO,
+ 4 * kMaxBufferSize / sizeof(int16_t), /* Enable ping-pong buffers */
+ flags);
+
+ mInitCheck = mRecord->initCheck();
}
AudioSource::~AudioSource() {