summaryrefslogtreecommitdiffstats
path: root/src/multimedia/platform/android/mediacapture/qandroidcapturesession.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/multimedia/platform/android/mediacapture/qandroidcapturesession.cpp')
-rw-r--r--src/multimedia/platform/android/mediacapture/qandroidcapturesession.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/multimedia/platform/android/mediacapture/qandroidcapturesession.cpp b/src/multimedia/platform/android/mediacapture/qandroidcapturesession.cpp
index 57dbbfb84..03eaa1545 100644
--- a/src/multimedia/platform/android/mediacapture/qandroidcapturesession.cpp
+++ b/src/multimedia/platform/android/mediacapture/qandroidcapturesession.cpp
@@ -182,7 +182,12 @@ void QAndroidCaptureSession::start(QMediaEncoderSettings &settings, const QUrl &
m_mediaRecorder->setVideoEncodingBitRate(settings.videoBitRate());
m_mediaRecorder->setVideoEncoder(m_videoEncoder);
- m_mediaRecorder->setOrientationHint(m_cameraSession->currentCameraRotation());
+ // media recorder is also compensanting the mirror on front camera
+ auto rotation = m_cameraSession->currentCameraRotation();
+ if (m_cameraSession->camera()->getFacing() == AndroidCamera::CameraFacingFront)
+ rotation = (360 - rotation) % 360; // remove mirror compensation
+
+ m_mediaRecorder->setOrientationHint(rotation);
}
// Set audio encoder settings