summaryrefslogtreecommitdiffstats
path: root/media/libmediaplayerservice
diff options
context:
space:
mode:
authorRobert Shih <robertshih@google.com>2015-07-25 00:11:41 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2015-07-25 00:11:41 +0000
commit6134ad6fdeab91e54a1abc8f00eafc956e42fb3d (patch)
tree335b2d67ce73fe18274cfbb5266b48440e7a2178 /media/libmediaplayerservice
parentd476e942d2e7fb50c086b26b3e50636e55eb0e33 (diff)
parente1d701902765c710398133025cfeee3ea8b6d280 (diff)
downloadframeworks_av-6134ad6fdeab91e54a1abc8f00eafc956e42fb3d.zip
frameworks_av-6134ad6fdeab91e54a1abc8f00eafc956e42fb3d.tar.gz
frameworks_av-6134ad6fdeab91e54a1abc8f00eafc956e42fb3d.tar.bz2
Merge "NuPlayerRenderer: prepareForMediaRenderingStart_l on en/disable offload audio" into mnc-dev
Diffstat (limited to 'media/libmediaplayerservice')
-rw-r--r--media/libmediaplayerservice/nuplayer/NuPlayer.cpp6
-rw-r--r--media/libmediaplayerservice/nuplayer/NuPlayerRenderer.cpp6
2 files changed, 10 insertions, 2 deletions
diff --git a/media/libmediaplayerservice/nuplayer/NuPlayer.cpp b/media/libmediaplayerservice/nuplayer/NuPlayer.cpp
index 8e3e460..bfdb1ad 100644
--- a/media/libmediaplayerservice/nuplayer/NuPlayer.cpp
+++ b/media/libmediaplayerservice/nuplayer/NuPlayer.cpp
@@ -1474,8 +1474,10 @@ void NuPlayer::determineAudioModeChange() {
sp<AMessage> format = mSource->getFormat(true /*audio*/);
tryOpenAudioSinkForOffload(format, hasVideo);
} else {
- mRenderer->signalDisableOffloadAudio();
- mOffloadAudio = false;
+ if (mOffloadAudio) {
+ mRenderer->signalDisableOffloadAudio();
+ mOffloadAudio = false;
+ }
}
}
diff --git a/media/libmediaplayerservice/nuplayer/NuPlayerRenderer.cpp b/media/libmediaplayerservice/nuplayer/NuPlayerRenderer.cpp
index 767417b..e9f3799 100644
--- a/media/libmediaplayerservice/nuplayer/NuPlayerRenderer.cpp
+++ b/media/libmediaplayerservice/nuplayer/NuPlayerRenderer.cpp
@@ -1422,12 +1422,18 @@ void NuPlayer::Renderer::onDisableOffloadAudio() {
Mutex::Autolock autoLock(mLock);
mFlags &= ~FLAG_OFFLOAD_AUDIO;
++mAudioDrainGeneration;
+ if (mAudioRenderingStartGeneration != -1) {
+ prepareForMediaRenderingStart_l();
+ }
}
void NuPlayer::Renderer::onEnableOffloadAudio() {
Mutex::Autolock autoLock(mLock);
mFlags |= FLAG_OFFLOAD_AUDIO;
++mAudioDrainGeneration;
+ if (mAudioRenderingStartGeneration != -1) {
+ prepareForMediaRenderingStart_l();
+ }
}
void NuPlayer::Renderer::onPause() {