summaryrefslogtreecommitdiffstats
path: root/media
diff options
context:
space:
mode:
authornadlabak <pavel@doshaska.net>2011-11-24 00:53:51 +0100
committernadlabak <pavel@doshaska.net>2011-11-24 00:53:51 +0100
commit829775012d328a888365ef0676889e16c2fcec38 (patch)
tree9d17bde056ab4eebbf5f6df33034e50dcedd74bb /media
parent72bd1410dfecbb061d7168af688579fd8da8b935 (diff)
downloadframeworks_base-829775012d328a888365ef0676889e16c2fcec38.zip
frameworks_base-829775012d328a888365ef0676889e16c2fcec38.tar.gz
frameworks_base-829775012d328a888365ef0676889e16c2fcec38.tar.bz2
Revert "framework/base: Fix for Camera shutter sound heard twice"
This reverts commit 38ce282c58c7010b8569dab32b2828a5cdef35e3. revert reason: breaks playback position in MortPlayer Audio Book, DogCattcher and other media players
Diffstat (limited to 'media')
-rw-r--r--media/libstagefright/AwesomePlayer.cpp13
1 files changed, 9 insertions, 4 deletions
diff --git a/media/libstagefright/AwesomePlayer.cpp b/media/libstagefright/AwesomePlayer.cpp
index d680928..1c87bd9 100644
--- a/media/libstagefright/AwesomePlayer.cpp
+++ b/media/libstagefright/AwesomePlayer.cpp
@@ -941,6 +941,7 @@ status_t AwesomePlayer::play_l() {
}
}
#endif
+ bool deferredAudioSeek = false;
if (mAudioSource != NULL) {
if (mAudioPlayer == NULL) {
@@ -948,10 +949,6 @@ status_t AwesomePlayer::play_l() {
mAudioPlayer = new AudioPlayer(mAudioSink, this);
mAudioPlayer->setSource(mAudioSource);
- // If there was a seek request while we were paused
- // and we're just starting up again, honor the request now.
- seekAudioIfNecessary_l();
-
// We've already started the MediaSource in order to enable
// the prefetcher to read its data.
status_t err = mAudioPlayer->start(
@@ -973,6 +970,8 @@ status_t AwesomePlayer::play_l() {
mTimeSource = mAudioPlayer;
+ deferredAudioSeek = true;
+
mWatchForAudioSeekComplete = false;
mWatchForAudioEOS = true;
}
@@ -1008,6 +1007,12 @@ status_t AwesomePlayer::play_l() {
postVideoEvent_l();
}
+ if (deferredAudioSeek) {
+ // If there was a seek request while we were paused
+ // and we're just starting up again, honor the request now.
+ seekAudioIfNecessary_l();
+ }
+
if (mFlags & AT_EOS) {
// Legacy behaviour, if a stream finishes playing and then
// is started again, we play from the start...