summaryrefslogtreecommitdiffstats
path: root/src/multimedia
diff options
context:
space:
mode:
Diffstat (limited to 'src/multimedia')
-rw-r--r--src/multimedia/platform/android/mediacapture/qandroidcamerasession.cpp5
-rw-r--r--src/multimedia/platform/android/mediaplayer/qandroidmediaplayer.cpp22
2 files changed, 14 insertions, 13 deletions
diff --git a/src/multimedia/platform/android/mediacapture/qandroidcamerasession.cpp b/src/multimedia/platform/android/mediacapture/qandroidcamerasession.cpp
index 62e12353e..38b819352 100644
--- a/src/multimedia/platform/android/mediacapture/qandroidcamerasession.cpp
+++ b/src/multimedia/platform/android/mediacapture/qandroidcamerasession.cpp
@@ -779,10 +779,11 @@ void QAndroidCameraSession::setVideoSink(QVideoSink *sink)
return;
m_sink = sink;
- delete m_textureOutput;
- m_textureOutput = nullptr;
if (m_sink) {
+ delete m_textureOutput;
+ m_textureOutput = nullptr;
+
m_textureOutput = new QAndroidTextureVideoOutput(this);
m_textureOutput->setSurface(m_sink);
}
diff --git a/src/multimedia/platform/android/mediaplayer/qandroidmediaplayer.cpp b/src/multimedia/platform/android/mediaplayer/qandroidmediaplayer.cpp
index 49ed8fbec..8ae49715e 100644
--- a/src/multimedia/platform/android/mediaplayer/qandroidmediaplayer.cpp
+++ b/src/multimedia/platform/android/mediaplayer/qandroidmediaplayer.cpp
@@ -334,23 +334,23 @@ void QAndroidMediaPlayer::setVideoSink(QVideoSink *sink)
m_videoSink = sink;
if (!m_videoSink) {
- if (mVideoOutput) {
- delete mVideoOutput;
- mVideoOutput = nullptr;
- mMediaPlayer->setDisplay(nullptr);
- }
return;
}
- if (!mVideoOutput) {
- mVideoOutput = new QAndroidTextureVideoOutput(this);
- connect(mVideoOutput, &QAndroidTextureVideoOutput::readyChanged, this,
- &QAndroidMediaPlayer::onVideoOutputReady);
- connect(mMediaPlayer, &AndroidMediaPlayer::timedTextChanged, mVideoOutput,
- &QAndroidTextureVideoOutput::setSubtitle);
+ if (mVideoOutput) {
+ delete mVideoOutput;
+ mVideoOutput = nullptr;
+ mMediaPlayer->setDisplay(nullptr);
}
+ mVideoOutput = new QAndroidTextureVideoOutput(this);
+ connect(mVideoOutput, &QAndroidTextureVideoOutput::readyChanged, this,
+ &QAndroidMediaPlayer::onVideoOutputReady);
+ connect(mMediaPlayer, &AndroidMediaPlayer::timedTextChanged, mVideoOutput,
+ &QAndroidTextureVideoOutput::setSubtitle);
+
mVideoOutput->setSurface(sink);
+
if (mVideoOutput->isReady())
mMediaPlayer->setDisplay(mVideoOutput->surfaceTexture());
}