summaryrefslogtreecommitdiffstats
path: root/media/libmedia/IAudioPolicyService.cpp
diff options
context:
space:
mode:
authorPaul McLean <pmclean@google.com>2015-04-17 13:15:36 -0600
committerPaul McLean <pmclean@google.com>2015-04-28 10:46:14 -0600
commit466dc8ed6ca6b7f585104806c48613dd34e608c9 (patch)
tree086bbd91d48e366377c02df8a65a5e2bad8675a6 /media/libmedia/IAudioPolicyService.cpp
parentdae24729d0b3ced8c4a7d7f9b631e852f564db4f (diff)
downloadframeworks_av-466dc8ed6ca6b7f585104806c48613dd34e608c9.zip
frameworks_av-466dc8ed6ca6b7f585104806c48613dd34e608c9.tar.gz
frameworks_av-466dc8ed6ca6b7f585104806c48613dd34e608c9.tar.bz2
Explicit routing in AudioRecord
Change-Id: I9cc5d54883a3e5c75d553fabb619fc8e49f4f9e5
Diffstat (limited to 'media/libmedia/IAudioPolicyService.cpp')
-rw-r--r--media/libmedia/IAudioPolicyService.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/media/libmedia/IAudioPolicyService.cpp b/media/libmedia/IAudioPolicyService.cpp
index afae7f5..fc36a7f 100644
--- a/media/libmedia/IAudioPolicyService.cpp
+++ b/media/libmedia/IAudioPolicyService.cpp
@@ -278,7 +278,8 @@ public:
uint32_t samplingRate,
audio_format_t format,
audio_channel_mask_t channelMask,
- audio_input_flags_t flags)
+ audio_input_flags_t flags,
+ audio_port_handle_t selectedDeviceId)
{
Parcel data, reply;
data.writeInterfaceToken(IAudioPolicyService::getInterfaceDescriptor());
@@ -296,6 +297,7 @@ public:
data.writeInt32(static_cast <uint32_t>(format));
data.writeInt32(channelMask);
data.writeInt32(flags);
+ data.writeInt32(selectedDeviceId);
status_t status = remote()->transact(GET_INPUT_FOR_ATTR, data, &reply);
if (status != NO_ERROR) {
return status;
@@ -914,10 +916,11 @@ status_t BnAudioPolicyService::onTransact(
audio_format_t format = (audio_format_t) data.readInt32();
audio_channel_mask_t channelMask = data.readInt32();
audio_input_flags_t flags = (audio_input_flags_t) data.readInt32();
+ audio_port_handle_t selectedDeviceId = (audio_port_handle_t) data.readInt32();
audio_io_handle_t input;
status_t status = getInputForAttr(&attr, &input, session,
samplingRate, format, channelMask,
- flags);
+ flags, selectedDeviceId);
reply->writeInt32(status);
if (status == NO_ERROR) {
reply->writeInt32(input);