summaryrefslogtreecommitdiffstats
path: root/media/libmedia/AudioTrack.cpp
diff options
context:
space:
mode:
authorEric Laurent <elaurent@google.com>2014-11-25 17:50:47 -0800
committerEric Laurent <elaurent@google.com>2014-11-25 17:50:47 -0800
commitcaf7f48a0ef558689d39aafd187c1571ff4128b4 (patch)
tree7a2c90732783e2c90cabb6045c4ab0dcea842bf1 /media/libmedia/AudioTrack.cpp
parent087eb332cdd64026de27c914194127f8fda1a846 (diff)
downloadframeworks_av-caf7f48a0ef558689d39aafd187c1571ff4128b4.zip
frameworks_av-caf7f48a0ef558689d39aafd187c1571ff4128b4.tar.gz
frameworks_av-caf7f48a0ef558689d39aafd187c1571ff4128b4.tar.bz2
AudioRecord: use audio attributes instead of audio source.
Added AudioRecord constructor with audio attributes. Replaced AudioPolicymanager::getInput() by getInputForAttr(). No new functionality for now. Also: - Fixed warnings in AudioPolicyManager - Allocate audio session ID before calling getOutputForAttr() in AudioTrack. Bug: 16006090. Change-Id: I15df21e4411db688e3096dd801cf579d76d81711
Diffstat (limited to 'media/libmedia/AudioTrack.cpp')
-rw-r--r--media/libmedia/AudioTrack.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/media/libmedia/AudioTrack.cpp b/media/libmedia/AudioTrack.cpp
index 569eb5c..4a6df6d 100644
--- a/media/libmedia/AudioTrack.cpp
+++ b/media/libmedia/AudioTrack.cpp
@@ -374,7 +374,11 @@ status_t AudioTrack::set(
mReqFrameCount = frameCount;
mNotificationFramesReq = notificationFrames;
mNotificationFramesAct = 0;
- mSessionId = sessionId;
+ if (sessionId == AUDIO_SESSION_ALLOCATE) {
+ mSessionId = AudioSystem::newAudioUniqueId();
+ } else {
+ mSessionId = sessionId;
+ }
int callingpid = IPCThreadState::self()->getCallingPid();
int mypid = getpid();
if (uid == -1 || (callingpid != mypid)) {