diff options
author | Frederik Gladhorn <frederik.gladhorn@digia.com> | 2013-04-29 14:19:29 +0200 |
---|---|---|
committer | Frederik Gladhorn <frederik.gladhorn@digia.com> | 2013-04-29 14:19:29 +0200 |
commit | cb324a50c920b275ef6c04162712b1a6f19bbe8d (patch) | |
tree | bf2e6f0565599154ad39996bf9f69515a584b1aa /src/plugins/avfoundation/mediaplayer/avfmediaplayersession.mm | |
parent | f23a7f9da4958527a7fe762f82fa7fc28e8f0adf (diff) | |
parent | 20fa4834478ec211c3d4fbcd4066f01cc2024285 (diff) |
Merge remote-tracking branch 'origin/stable' into dev
Change-Id: I0f0457e9863f540b7bd8bc104c92891d8cf5c483
Diffstat (limited to 'src/plugins/avfoundation/mediaplayer/avfmediaplayersession.mm')
-rw-r--r-- | src/plugins/avfoundation/mediaplayer/avfmediaplayersession.mm | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/src/plugins/avfoundation/mediaplayer/avfmediaplayersession.mm b/src/plugins/avfoundation/mediaplayer/avfmediaplayersession.mm index 9a1808491..7af6f4394 100644 --- a/src/plugins/avfoundation/mediaplayer/avfmediaplayersession.mm +++ b/src/plugins/avfoundation/mediaplayer/avfmediaplayersession.mm @@ -283,7 +283,7 @@ static void *AVFMediaPlayerSessionObserverCurrentItemObservationContext = &AVFMe -(void) assetFailedToPrepareForPlayback:(NSError *)error { Q_UNUSED(error) - //TODO: Let the session know that the assest failed to prepare for playback + QMetaObject::invokeMethod(m_session, "processMediaLoadError", Qt::AutoConnection); #ifdef QT_DEBUG_AVF qDebug() << Q_FUNC_INFO; qDebug() << [[error localizedDescription] UTF8String]; @@ -357,7 +357,7 @@ static void *AVFMediaPlayerSessionObserverCurrentItemObservationContext = &AVFMe else if (context == AVFMediaPlayerSessionObserverCurrentItemObservationContext) { AVPlayerItem *newPlayerItem = [change objectForKey:NSKeyValueChangeNewKey]; - if (m_playerItem != newPlayerItem); + if (m_playerItem != newPlayerItem) { m_playerItem = newPlayerItem; @@ -799,13 +799,6 @@ void AVFMediaPlayerSession::processLoadStateChange() [[(AVFMediaPlayerSessionObserver*)m_observer player] setRate:m_rate]; [[(AVFMediaPlayerSessionObserver*)m_observer player] play]; } - - } else { - Q_EMIT error(QMediaPlayer::FormatError, tr("Failed to load media")); - Q_EMIT mediaStatusChanged(m_mediaStatus = QMediaPlayer::InvalidMedia); - Q_EMIT stateChanged(m_state = QMediaPlayer::StoppedState); - - return; } if (newStatus != m_mediaStatus) @@ -817,6 +810,13 @@ void AVFMediaPlayerSession::processPositionChange() Q_EMIT positionChanged(position()); } +void AVFMediaPlayerSession::processMediaLoadError() +{ + Q_EMIT error(QMediaPlayer::FormatError, tr("Failed to load media")); + Q_EMIT mediaStatusChanged(m_mediaStatus = QMediaPlayer::InvalidMedia); + Q_EMIT stateChanged(m_state = QMediaPlayer::StoppedState); +} + void AVFMediaPlayerSession::processCurrentItemChanged() { #ifdef QT_DEBUG_AVF |