diff options
author | Christian Strømme <christian.stromme@digia.com> | 2014-02-20 14:25:35 +0100 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2014-03-21 00:31:17 +0100 |
commit | dcf11bba3ccfd2a2a44556b1947406947aaa2be1 (patch) | |
tree | a138cb2ba0c668b56df82e9e93e7a99d61771bf2 /src/plugins/android/src/mediaplayer/qandroidmediaplayercontrol.h | |
parent | ddd22fab2bb26cd452edc1b8fc0c0750a7c52ae5 (diff) |
Android: Make the Mediaplayer more robust
In some cases the the Android media player would get into a unexpected
state and we where then not able to recover.
With this patch we monitor the state changes more closely and recover
when possible.
Task-number: QTBUG-35651
Change-Id: I142c63fbbf716d3f94ebdcf016a7cadad7b13207
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
Diffstat (limited to 'src/plugins/android/src/mediaplayer/qandroidmediaplayercontrol.h')
-rw-r--r-- | src/plugins/android/src/mediaplayer/qandroidmediaplayercontrol.h | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/src/plugins/android/src/mediaplayer/qandroidmediaplayercontrol.h b/src/plugins/android/src/mediaplayer/qandroidmediaplayercontrol.h index fadac3c19..1be3b4428 100644 --- a/src/plugins/android/src/mediaplayer/qandroidmediaplayercontrol.h +++ b/src/plugins/android/src/mediaplayer/qandroidmediaplayercontrol.h @@ -93,9 +93,9 @@ private Q_SLOTS: void onVideoOutputReady(bool ready); void onError(qint32 what, qint32 extra); void onInfo(qint32 what, qint32 extra); - void onMediaPlayerInfo(qint32 what, qint32 extra); - void onBufferChanged(qint32 percent); + void onBufferingChanged(qint32 percent); void onVideoSizeChanged(qint32 width, qint32 height); + void onStateChanged(qint32 state); private: JMediaPlayer *mMediaPlayer; @@ -111,15 +111,16 @@ private: QSize mVideoSize; bool mBuffering; QMediaTimeRange mAvailablePlaybackRange; - bool mMediaPlayerReady; - QMediaPlayer::State mPendingState; + int mState; + int mPendingState; qint64 mPendingPosition; bool mPendingSetMedia; + int mPendingVolume; + int mPendingMute; QScopedPointer<QTemporaryFile> mTempFile; void setState(QMediaPlayer::State state); void setMediaStatus(QMediaPlayer::MediaStatus status); - void setError(int error, const QString &errorString); void setSeekable(bool seekable); void setAudioAvailable(bool available); void setVideoAvailable(bool available); |