diff options
author | Yoann Lopes <yoann.lopes@digia.com> | 2014-03-13 16:25:52 +0100 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2014-03-17 13:47:41 +0100 |
commit | cd0533166f29d8ad49ad9ebc35e040f66ab127eb (patch) | |
tree | 997a0d9a6919ad21cce668c392c9a120c4c5b29a /src/plugins/android | |
parent | 29ba8cf4c417d7c2ff9f2815bdc49c97215283a3 (diff) |
Android: correctly report QMediaRecorder actual output location.
Report the recorded media location to have changed only when
recording is finished and successful.
Change-Id: Iee7565b9ba12d9de09f86dffb34c40936fee198c
Reviewed-by: Christian Stromme <christian.stromme@digia.com>
Diffstat (limited to 'src/plugins/android')
-rw-r--r-- | src/plugins/android/src/mediacapture/qandroidcapturesession.cpp | 10 | ||||
-rw-r--r-- | src/plugins/android/src/mediacapture/qandroidcapturesession.h | 1 |
2 files changed, 5 insertions, 6 deletions
diff --git a/src/plugins/android/src/mediacapture/qandroidcapturesession.cpp b/src/plugins/android/src/mediacapture/qandroidcapturesession.cpp index fef2a5beb..3e5c261a6 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 deee50569..fc8300d4a 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; |