diff options
author | Bartlomiej Moskal <bartlomiej.moskal@qt.io> | 2024-04-09 12:08:08 +0200 |
---|---|---|
committer | Bartlomiej Moskal <bartlomiej.moskal@qt.io> | 2024-04-11 17:21:44 +0000 |
commit | 1f568e5933e4d60a1b15222f53448092aa6e83f0 (patch) | |
tree | 274798f71e291ff9b652adb590640ee2ff954a3e /src/plugins | |
parent | a01a38de50f4fa4dd296be37807698190044b9f6 (diff) |
Android-backend: Do not reset QAndroidVideoOutput if not needed
Before this commit, QAndroidTextureVideoOutput was reset every time the
player (or camera preview) was stopped. Resetting
AndroidTextureVideoOutput clears the QRhi - that can cause a black video
frame problem (especially when trying to stop the current video and play
the next one).
This commit removes unnecessary QRhi cleanup. QAndroidVideoOutput still
need to be reset (QRhi need to be recreated) in case when
VideoSink::rhiChanged was emitted.
Fixes: QTBUG-119914
Fixes: QTBUG-117771
Pick-to: 6.7 6.5
Change-Id: Idc45bafe24cf7a8679b57555b0bbb5155979e11f
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Diffstat (limited to 'src/plugins')
-rw-r--r-- | src/plugins/multimedia/android/mediacapture/qandroidcamerasession.cpp | 1 | ||||
-rw-r--r-- | src/plugins/multimedia/android/mediaplayer/qandroidmediaplayer.cpp | 1 |
2 files changed, 0 insertions, 2 deletions
diff --git a/src/plugins/multimedia/android/mediacapture/qandroidcamerasession.cpp b/src/plugins/multimedia/android/mediacapture/qandroidcamerasession.cpp index ad9b64c7a..f7dd1c653 100644 --- a/src/plugins/multimedia/android/mediacapture/qandroidcamerasession.cpp +++ b/src/plugins/multimedia/android/mediacapture/qandroidcamerasession.cpp @@ -417,7 +417,6 @@ void QAndroidCameraSession::stopPreview() if (m_videoOutput) { m_videoOutput->stop(); - m_videoOutput->reset(); } m_previewStarted = false; } diff --git a/src/plugins/multimedia/android/mediaplayer/qandroidmediaplayer.cpp b/src/plugins/multimedia/android/mediaplayer/qandroidmediaplayer.cpp index 2fbbd696b..b257a8986 100644 --- a/src/plugins/multimedia/android/mediaplayer/qandroidmediaplayer.cpp +++ b/src/plugins/multimedia/android/mediaplayer/qandroidmediaplayer.cpp @@ -648,7 +648,6 @@ void QAndroidMediaPlayer::onStateChanged(qint32 state) mMediaPlayer->setDisplay(0); if (mVideoOutput) { mVideoOutput->stop(); - mVideoOutput->reset(); } } } |