diff options
author | Lajos Molnar <lajos@google.com> | 2013-08-14 18:30:38 -0700 |
---|---|---|
committer | Lajos Molnar <lajos@google.com> | 2013-08-15 16:04:58 -0700 |
commit | cbaffcffee6418d678806e63097c19fe26d48fe0 (patch) | |
tree | 21af7d5eab33df7c6487290014f29a83b525734c /media/libmediaplayerservice/MidiFile.cpp | |
parent | b8689b31813f55cbc1bf8e9ca0d46a9ee113e38a (diff) | |
download | frameworks_av-cbaffcffee6418d678806e63097c19fe26d48fe0.zip frameworks_av-cbaffcffee6418d678806e63097c19fe26d48fe0.tar.gz frameworks_av-cbaffcffee6418d678806e63097c19fe26d48fe0.tar.bz2 |
Add MEDIA_STARTED/PAUSED/STOPPED events to media players
This is needed for the MediaTimeProvider java interface, so it does not
continually poll for current media time.
Note: NuPlayer and AwesomePlayer do not correctly handle stop (pause
instead), so for those we will signal PAUSED.
Signed-off-by: Lajos Molnar <lajos@google.com>
Change-Id: I3c61e1bda475f131323f475c18a42e3ec66c9ae1
Bug: 10326117
Diffstat (limited to 'media/libmediaplayerservice/MidiFile.cpp')
-rw-r--r-- | media/libmediaplayerservice/MidiFile.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/media/libmediaplayerservice/MidiFile.cpp b/media/libmediaplayerservice/MidiFile.cpp index 270b872..0a6aa90 100644 --- a/media/libmediaplayerservice/MidiFile.cpp +++ b/media/libmediaplayerservice/MidiFile.cpp @@ -220,6 +220,9 @@ status_t MidiFile::start() } mRender = true; + if (mState == EAS_STATE_PLAY) { + sendEvent(MEDIA_STARTED); + } // wake up render thread ALOGV(" wakeup render thread"); @@ -242,6 +245,7 @@ status_t MidiFile::stop() } } mPaused = false; + sendEvent(MEDIA_STOPPED); return NO_ERROR; } @@ -279,6 +283,7 @@ status_t MidiFile::pause() return ERROR_EAS_FAILURE; } mPaused = true; + sendEvent(MEDIA_PAUSED); return NO_ERROR; } @@ -382,6 +387,7 @@ status_t MidiFile::reset() status_t MidiFile::reset_nosync() { ALOGV("MidiFile::reset_nosync"); + sendEvent(MEDIA_STOPPED); // close file if (mEasHandle) { EAS_CloseFile(mEasData, mEasHandle); |