diff options
author | Frederik Gladhorn <frederik.gladhorn@digia.com> | 2013-10-11 16:18:46 +0200 |
---|---|---|
committer | Frederik Gladhorn <frederik.gladhorn@digia.com> | 2013-10-14 14:35:38 +0200 |
commit | 677aac0e9223d59585c2b58c114801128145998b (patch) | |
tree | 5d80f78ca7f5a6593d42a7770ebf6f2558b2674d /src/plugins/android/src/mediaplayer/qandroidmediaplayercontrol.cpp | |
parent | 85aadf8cb2f7125ae7457b78943d3486bd2d2133 (diff) | |
parent | 7d24543c27bf3eebe1ac7c8f625c6e9c9fbdbdec (diff) |
Merge remote-tracking branch 'origin/stable' into dev
Conflicts:
src/plugins/blackberry/camera/bbcamerasession.cpp
Change-Id: I7c86e10140ab86fd2a07e2f034dec38ae9112559
Diffstat (limited to 'src/plugins/android/src/mediaplayer/qandroidmediaplayercontrol.cpp')
-rw-r--r-- | src/plugins/android/src/mediaplayer/qandroidmediaplayercontrol.cpp | 18 |
1 files changed, 6 insertions, 12 deletions
diff --git a/src/plugins/android/src/mediaplayer/qandroidmediaplayercontrol.cpp b/src/plugins/android/src/mediaplayer/qandroidmediaplayercontrol.cpp index 753c60662..3f3b599ac 100644 --- a/src/plugins/android/src/mediaplayer/qandroidmediaplayercontrol.cpp +++ b/src/plugins/android/src/mediaplayer/qandroidmediaplayercontrol.cpp @@ -45,12 +45,6 @@ QT_BEGIN_NAMESPACE -static void textureReadyCallback(void *context) -{ - if (context) - reinterpret_cast<QAndroidMediaPlayerControl *>(context)->onSurfaceTextureReady(); -} - QAndroidMediaPlayerControl::QAndroidMediaPlayerControl(QObject *parent) : QMediaPlayerControl(parent), mMediaPlayer(new JMediaPlayer), @@ -241,18 +235,18 @@ void QAndroidMediaPlayerControl::setMedia(const QMediaContent &mediaContent, setSeekable(true); } -void QAndroidMediaPlayerControl::setVideoOutput(QAndroidVideoOutput *videoOutput) +void QAndroidMediaPlayerControl::setVideoOutput(QObject *videoOutput) { if (mVideoOutput) mVideoOutput->stop(); - mVideoOutput = videoOutput; + mVideoOutput = qobject_cast<QAndroidVideoOutput *>(videoOutput); if (mVideoOutput && !mMediaPlayer->display()) { - if (mVideoOutput->isTextureReady()) + if (mVideoOutput->isReady()) mMediaPlayer->setDisplay(mVideoOutput->surfaceHolder()); else - mVideoOutput->setTextureReadyCallback(textureReadyCallback, this); + connect(videoOutput, SIGNAL(readyChanged(bool)), this, SLOT(onVideoOutputReady(bool))); } } @@ -426,9 +420,9 @@ void QAndroidMediaPlayerControl::onVideoSizeChanged(qint32 width, qint32 height) mVideoOutput->setVideoSize(mVideoSize); } -void QAndroidMediaPlayerControl::onSurfaceTextureReady() +void QAndroidMediaPlayerControl::onVideoOutputReady(bool ready) { - if (!mMediaPlayer->display() && mVideoOutput) { + if (!mMediaPlayer->display() && mVideoOutput && ready) { mMediaPlayer->setDisplay(mVideoOutput->surfaceHolder()); flushPendingStates(); } |