diff options
author | Marco Nelissen <marcone@google.com> | 2014-11-11 13:56:44 -0800 |
---|---|---|
committer | Marco Nelissen <marcone@google.com> | 2014-11-11 13:58:56 -0800 |
commit | 368e33700ed16acc8e99657fb84edd5d2806b34f (patch) | |
tree | 73067e4cc41d76e60ac526ece3a29c2b47443089 /media/libmediaplayerservice/nuplayer/NuPlayerDriver.cpp | |
parent | a7e65b196bf7efb27daa36c8a783d9c57c9ffc03 (diff) | |
download | frameworks_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.cpp | 5 |
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; } |