summaryrefslogtreecommitdiffstats
path: root/src/plugins/avfoundation/mediaplayer/avfmediaplayersession.mm
diff options
context:
space:
mode:
authorFrederik Gladhorn <frederik.gladhorn@digia.com>2013-04-29 14:19:29 +0200
committerFrederik Gladhorn <frederik.gladhorn@digia.com>2013-04-29 14:19:29 +0200
commitcb324a50c920b275ef6c04162712b1a6f19bbe8d (patch)
treebf2e6f0565599154ad39996bf9f69515a584b1aa /src/plugins/avfoundation/mediaplayer/avfmediaplayersession.mm
parentf23a7f9da4958527a7fe762f82fa7fc28e8f0adf (diff)
parent20fa4834478ec211c3d4fbcd4066f01cc2024285 (diff)
Merge remote-tracking branch 'origin/stable' into dev
Diffstat (limited to 'src/plugins/avfoundation/mediaplayer/avfmediaplayersession.mm')
-rw-r--r--src/plugins/avfoundation/mediaplayer/avfmediaplayersession.mm18
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