diff --git a/src/plugins/android/src/mediacapture/qandroidcapturesession.cpp b/src/plugins/android/src/mediacapture/qandroidcapturesession.cpp index fef2a5be..3e5c261a 100644 --- a/src/plugins/android/src/mediacapture/qandroidcapturesession.cpp +++ b/src/plugins/android/src/mediacapture/qandroidcapturesession.cpp @@ -130,7 +130,6 @@ bool QAndroidCaptureSession::setOutputLocation(const QUrl &location) if (m_requestedOutputLocation.isValid() && (m_requestedOutputLocation.isLocalFile() || m_requestedOutputLocation.isRelative())) { - emit actualLocationChanged(m_requestedOutputLocation); return true; } @@ -221,10 +220,7 @@ bool QAndroidCaptureSession::start() : QLatin1String("REC_"), m_containerFormat); - m_actualOutputLocation = QUrl::fromLocalFile(filePath); - if (m_actualOutputLocation != m_requestedOutputLocation) - emit actualLocationChanged(m_actualOutputLocation); - + m_usedOutputLocation = QUrl::fromLocalFile(filePath); m_mediaRecorder->setOutputFile(filePath); if (!m_mediaRecorder->prepare()) { @@ -282,8 +278,10 @@ void QAndroidCaptureSession::stop(bool error) : JMultimediaUtils::getDefaultMediaDirectory(JMultimediaUtils::Sounds); if (mediaPath.startsWith(standardLoc)) JMultimediaUtils::registerMediaFile(mediaPath); - } + m_actualOutputLocation = m_usedOutputLocation; + emit actualLocationChanged(m_actualOutputLocation); + } } void QAndroidCaptureSession::setStatus(QMediaRecorder::Status status) diff --git a/src/plugins/android/src/mediacapture/qandroidcapturesession.h b/src/plugins/android/src/mediacapture/qandroidcapturesession.h index deee5056..fc8300d4 100644 --- a/src/plugins/android/src/mediacapture/qandroidcapturesession.h +++ b/src/plugins/android/src/mediacapture/qandroidcapturesession.h @@ -160,6 +160,7 @@ private: QMediaRecorder::State m_state; QMediaRecorder::Status m_status; QUrl m_requestedOutputLocation; + QUrl m_usedOutputLocation; QUrl m_actualOutputLocation; CaptureProfile m_defaultSettings;