DirectShow: fix some media player status issue.

Change the status to LoadedMedia if the media position is changed while
in the EndOfMedia status.

Change-Id: I6614fc184be80b11952b0e45af22ef030cfc36c5
Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
This commit is contained in:
Yoann Lopes
2015-10-31 19:31:05 +01:00
parent 556fa07121
commit 953a61e5fd

View File

@@ -114,6 +114,11 @@ qint64 DirectShowPlayerControl::position() const
void DirectShowPlayerControl::setPosition(qint64 position) void DirectShowPlayerControl::setPosition(qint64 position)
{ {
if (m_status == QMediaPlayer::EndOfMedia) {
m_status = QMediaPlayer::LoadedMedia;
emit mediaStatusChanged(m_status);
}
if (m_state == QMediaPlayer::StoppedState && m_pendingPosition != position) { if (m_state == QMediaPlayer::StoppedState && m_pendingPosition != position) {
m_pendingPosition = position; m_pendingPosition = position;
emit positionChanged(m_pendingPosition); emit positionChanged(m_pendingPosition);