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/nuplayer/NuPlayerRenderer.h | |
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/nuplayer/NuPlayerRenderer.h')
-rw-r--r-- | media/libmediaplayerservice/nuplayer/NuPlayerRenderer.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/media/libmediaplayerservice/nuplayer/NuPlayerRenderer.h b/media/libmediaplayerservice/nuplayer/NuPlayerRenderer.h index c9796e2..94a05ea 100644 --- a/media/libmediaplayerservice/nuplayer/NuPlayerRenderer.h +++ b/media/libmediaplayerservice/nuplayer/NuPlayerRenderer.h @@ -53,6 +53,7 @@ struct NuPlayer::Renderer : public AHandler { kWhatFlushComplete = 'fluC', kWhatPosition = 'posi', kWhatVideoRenderingStart = 'vdrd', + kWhatMediaRenderingStart = 'mdrd', }; protected: @@ -106,6 +107,8 @@ private: bool mPaused; bool mVideoRenderingStarted; + int32_t mVideoRenderingStartGeneration; + int32_t mAudioRenderingStartGeneration; int64_t mLastPositionUpdateUs; int64_t mVideoLateByUs; @@ -116,6 +119,9 @@ private: void onDrainVideoQueue(); void postDrainVideoQueue(); + void prepareForMediaRenderingStart(); + void notifyIfMediaRenderingStarted(); + void onQueueBuffer(const sp<AMessage> &msg); void onQueueEOS(const sp<AMessage> &msg); void onFlush(const sp<AMessage> &msg); |