diff options
author | Haynes Mathew George <hgeorge@codeaurora.org> | 2015-12-08 15:11:51 -0800 |
---|---|---|
committer | Steve Kondik <steve@cyngn.com> | 2015-12-23 14:27:58 -0800 |
commit | de3b1c01146d2103f6bf56e2659a9c650734945a (patch) | |
tree | 0aa0b5965b39e8b2900e669adb8586b69cd0f7f0 /services/audiopolicy/service/AudioPolicyInterfaceImpl.cpp | |
parent | 8a0d50583fc6a376816333d781a709d26742226d (diff) | |
download | frameworks_av-de3b1c01146d2103f6bf56e2659a9c650734945a.zip frameworks_av-de3b1c01146d2103f6bf56e2659a9c650734945a.tar.gz frameworks_av-de3b1c01146d2103f6bf56e2659a9c650734945a.tar.bz2 |
audiopolicy: Handle startOutput on output command thread
Handle startOutput on AudioPolicyService output command thread
to serialize with concurrent releaseOutput/stopOutput calls.
CRs-Fixed: 944129
Change-Id: Ie333c736750c7dfb31d3036d79dfff13cd0486fc
Diffstat (limited to 'services/audiopolicy/service/AudioPolicyInterfaceImpl.cpp')
-rw-r--r-- | services/audiopolicy/service/AudioPolicyInterfaceImpl.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/services/audiopolicy/service/AudioPolicyInterfaceImpl.cpp b/services/audiopolicy/service/AudioPolicyInterfaceImpl.cpp index a228798..c0d3866 100644 --- a/services/audiopolicy/service/AudioPolicyInterfaceImpl.cpp +++ b/services/audiopolicy/service/AudioPolicyInterfaceImpl.cpp @@ -187,6 +187,20 @@ status_t AudioPolicyService::startOutput(audio_io_handle_t output, return NO_INIT; } ALOGV("startOutput()"); + return mOutputCommandThread->startOutputCommand(output, stream, session); +} + +status_t AudioPolicyService::doStartOutput(audio_io_handle_t output, + audio_stream_type_t stream, + audio_session_t session) +{ + if (uint32_t(stream) >= AUDIO_STREAM_CNT) { + return BAD_VALUE; + } + if (mAudioPolicyManager == NULL) { + return NO_INIT; + } + ALOGV("doStartOutput()"); sp<AudioPolicyEffects>audioPolicyEffects; { Mutex::Autolock _l(mLock); |