Merge "AudioFlinger: fix RecordThread initial device"
diff --git a/services/audioflinger/AudioFlinger.cpp b/services/audioflinger/AudioFlinger.cpp
index 1270825..47c2772 100644
--- a/services/audioflinger/AudioFlinger.cpp
+++ b/services/audioflinger/AudioFlinger.cpp
@@ -1650,14 +1650,14 @@
// Start record thread
// RecorThread require both input and output device indication to forward to audio
// pre processing modules
- audio_devices_t device = (*pDevices) | primaryOutputDevice_l();
-
thread = new RecordThread(this,
input,
reqSamplingRate,
reqChannels,
id,
- device, teeSink);
+ primaryOutputDevice_l(),
+ *pDevices,
+ teeSink);
mRecordThreads.add(id, thread);
ALOGV("openInput() created record thread: ID %d thread %p", id, thread);
if (pSamplingRate != NULL) *pSamplingRate = reqSamplingRate;
diff --git a/services/audioflinger/Threads.cpp b/services/audioflinger/Threads.cpp
index 6f748d7..ba848d7 100644
--- a/services/audioflinger/Threads.cpp
+++ b/services/audioflinger/Threads.cpp
@@ -3573,9 +3573,10 @@
uint32_t sampleRate,
audio_channel_mask_t channelMask,
audio_io_handle_t id,
- audio_devices_t device,
+ audio_devices_t outDevice,
+ audio_devices_t inDevice,
const sp<NBAIO_Sink>& teeSink) :
- ThreadBase(audioFlinger, id, AUDIO_DEVICE_NONE, device, RECORD),
+ ThreadBase(audioFlinger, id, outDevice, inDevice, RECORD),
mInput(input), mResampler(NULL), mRsmpOutBuffer(NULL), mRsmpInBuffer(NULL),
// mRsmpInIndex and mInputBytes set by readInputParameters()
mReqChannelCount(popcount(channelMask)),
diff --git a/services/audioflinger/Threads.h b/services/audioflinger/Threads.h
index 5fa7eaf..fa1e336 100644
--- a/services/audioflinger/Threads.h
+++ b/services/audioflinger/Threads.h
@@ -702,7 +702,8 @@
uint32_t sampleRate,
audio_channel_mask_t channelMask,
audio_io_handle_t id,
- audio_devices_t device,
+ audio_devices_t outDevice,
+ audio_devices_t inDevice,
const sp<NBAIO_Sink>& teeSink);
virtual ~RecordThread();