summaryrefslogtreecommitdiffstats
path: root/media/libmediaplayerservice/nuplayer/NuPlayerDriver.cpp
diff options
context:
space:
mode:
authorMarco Nelissen <marcone@google.com>2014-11-11 13:56:44 -0800
committerMarco Nelissen <marcone@google.com>2014-11-11 13:58:56 -0800
commit368e33700ed16acc8e99657fb84edd5d2806b34f (patch)
tree73067e4cc41d76e60ac526ece3a29c2b47443089 /media/libmediaplayerservice/nuplayer/NuPlayerDriver.cpp
parenta7e65b196bf7efb27daa36c8a783d9c57c9ffc03 (diff)
downloadframeworks_av-368e33700ed16acc8e99657fb84edd5d2806b34f.zip
frameworks_av-368e33700ed16acc8e99657fb84edd5d2806b34f.tar.gz
frameworks_av-368e33700ed16acc8e99657fb84edd5d2806b34f.tar.bz2
Fix looping sound playback
The renderer stops the audio sink at the end in order to play out the last little bit of audio. When the sound is looping, the sink needs to be restarted. Bug: 18326137 Change-Id: I3bc3629597fc43cce33bdf5691d29cc4c2285926
Diffstat (limited to 'media/libmediaplayerservice/nuplayer/NuPlayerDriver.cpp')
-rw-r--r--media/libmediaplayerservice/nuplayer/NuPlayerDriver.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/media/libmediaplayerservice/nuplayer/NuPlayerDriver.cpp b/media/libmediaplayerservice/nuplayer/NuPlayerDriver.cpp
index b9a1a6c..b42b480 100644
--- a/media/libmediaplayerservice/nuplayer/NuPlayerDriver.cpp
+++ b/media/libmediaplayerservice/nuplayer/NuPlayerDriver.cpp
@@ -628,6 +628,11 @@ void NuPlayerDriver::notifyListener_l(
if (mLooping || (mAutoLoop
&& (mAudioSink == NULL || mAudioSink->realtime()))) {
mPlayer->seekToAsync(0);
+ if (mAudioSink != NULL) {
+ // The renderer has stopped the sink at the end in order to play out
+ // the last little bit of audio. If we're looping, we need to restart it.
+ mAudioSink->start();
+ }
break;
}