summaryrefslogtreecommitdiffstats
path: root/media/libstagefright
diff options
context:
space:
mode:
authorEric Laurent <elaurent@google.com>2013-10-08 10:51:07 -0700
committerAndroid Git Automerger <android-git-automerger@android.com>2013-10-08 10:51:07 -0700
commit9e8d612cb3bcef95999407edc22252c9b251ee6d (patch)
tree02f8fb3d86c908bfad1a2848d6200acdb40e926a /media/libstagefright
parent9a7d11f07dc19327892915f0bfecce758d2f4098 (diff)
parentaab5b08cb4a3b5a47daece6168f41ec918020739 (diff)
downloadframeworks_av-9e8d612cb3bcef95999407edc22252c9b251ee6d.zip
frameworks_av-9e8d612cb3bcef95999407edc22252c9b251ee6d.tar.gz
frameworks_av-9e8d612cb3bcef95999407edc22252c9b251ee6d.tar.bz2
am aab5b08c: AwesomePlayer: do not send events when paused.
* commit 'aab5b08cb4a3b5a47daece6168f41ec918020739': AwesomePlayer: do not send events when paused.
Diffstat (limited to 'media/libstagefright')
-rw-r--r--media/libstagefright/AwesomePlayer.cpp8
-rw-r--r--media/libstagefright/TimedEventQueue.cpp6
2 files changed, 13 insertions, 1 deletions
diff --git a/media/libstagefright/AwesomePlayer.cpp b/media/libstagefright/AwesomePlayer.cpp
index e7cfc78..be6719a 100644
--- a/media/libstagefright/AwesomePlayer.cpp
+++ b/media/libstagefright/AwesomePlayer.cpp
@@ -798,7 +798,9 @@ void AwesomePlayer::onBufferingUpdate() {
}
}
- postBufferingEvent_l();
+ if (mFlags & (PLAYING | PREPARING)) {
+ postBufferingEvent_l();
+ }
}
void AwesomePlayer::sendCacheStats() {
@@ -1001,6 +1003,10 @@ status_t AwesomePlayer::play_l() {
}
addBatteryData(params);
+ if (isStreamingHTTP()) {
+ postBufferingEvent_l();
+ }
+
return OK;
}
diff --git a/media/libstagefright/TimedEventQueue.cpp b/media/libstagefright/TimedEventQueue.cpp
index 74c5905..6a16bb4 100644
--- a/media/libstagefright/TimedEventQueue.cpp
+++ b/media/libstagefright/TimedEventQueue.cpp
@@ -33,6 +33,8 @@
#include <media/stagefright/foundation/ALooper.h>
#include <binder/IServiceManager.h>
#include <powermanager/PowerManager.h>
+#include <binder/IPCThreadState.h>
+#include <utils/CallStack.h>
namespace android {
@@ -327,10 +329,12 @@ void TimedEventQueue::acquireWakeLock_l()
}
if (mPowerManager != 0) {
sp<IBinder> binder = new BBinder();
+ int64_t token = IPCThreadState::self()->clearCallingIdentity();
status_t status = mPowerManager->acquireWakeLock(POWERMANAGER_PARTIAL_WAKE_LOCK,
binder,
String16("TimedEventQueue"),
String16("media"));
+ IPCThreadState::self()->restoreCallingIdentity(token);
if (status == NO_ERROR) {
mWakeLockToken = binder;
}
@@ -343,7 +347,9 @@ void TimedEventQueue::releaseWakeLock_l()
return;
}
if (mPowerManager != 0) {
+ int64_t token = IPCThreadState::self()->clearCallingIdentity();
mPowerManager->releaseWakeLock(mWakeLockToken, 0);
+ IPCThreadState::self()->restoreCallingIdentity(token);
}
mWakeLockToken.clear();
}