diff options
Diffstat (limited to 'src/plugins/multimedia/qnx/capture')
3 files changed, 12 insertions, 7 deletions
diff --git a/src/plugins/multimedia/qnx/capture/qqnxmediacapturesession.cpp b/src/plugins/multimedia/qnx/capture/qqnxmediacapturesession.cpp index c38dcfd80..99ca0ab8b 100644 --- a/src/plugins/multimedia/qnx/capture/qqnxmediacapturesession.cpp +++ b/src/plugins/multimedia/qnx/capture/qqnxmediacapturesession.cpp @@ -39,7 +39,7 @@ #include "qqnxmediacapturesession_p.h" #include "qqnxaudioinput_p.h" -#include "qqnxcamera_p.h" +#include "qqnxplatformcamera_p.h" #include "qqnximagecapture_p.h" #include "qqnxmediarecorder_p.h" #include "qqnxvideosink_p.h" @@ -65,7 +65,8 @@ void QQnxMediaCaptureSession::setCamera(QPlatformCamera *camera) { if (camera == m_camera) return; - m_camera = static_cast<QQnxCamera *>(camera); + m_camera = static_cast<QQnxPlatformCamera *>(camera); + m_camera->setCaptureSession(this); emit cameraChanged(); } diff --git a/src/plugins/multimedia/qnx/capture/qqnxmediacapturesession_p.h b/src/plugins/multimedia/qnx/capture/qqnxmediacapturesession_p.h index ec15d80ba..7b2f46793 100644 --- a/src/plugins/multimedia/qnx/capture/qqnxmediacapturesession_p.h +++ b/src/plugins/multimedia/qnx/capture/qqnxmediacapturesession_p.h @@ -57,7 +57,7 @@ QT_BEGIN_NAMESPACE class QQnxAudioInput; -class QQnxCamera; +class QQnxPlatformCamera; class QQnxImageCapture; class QQnxMediaRecorder; class QQnxVideoSink; @@ -90,7 +90,7 @@ public: QQnxVideoSink *videoSink() const; private: - QQnxCamera *m_camera = nullptr; + QQnxPlatformCamera *m_camera = nullptr; QQnxImageCapture *m_imageCapture = nullptr; QQnxMediaRecorder *m_mediaRecorder = nullptr; QQnxAudioInput *m_audioInput = nullptr; diff --git a/src/plugins/multimedia/qnx/capture/qqnxmediarecorder.cpp b/src/plugins/multimedia/qnx/capture/qqnxmediarecorder.cpp index 6aa0c686b..282743dbe 100644 --- a/src/plugins/multimedia/qnx/capture/qqnxmediarecorder.cpp +++ b/src/plugins/multimedia/qnx/capture/qqnxmediarecorder.cpp @@ -39,6 +39,7 @@ ****************************************************************************/ #include "qqnxmediarecorder_p.h" +#include "qqnxplatformcamera_p.h" #include "qqnxaudioinput_p.h" #include "qqnxcamera_p.h" #include "qqnxmediacapturesession_p.h" @@ -118,11 +119,13 @@ void QQnxMediaRecorder::startVideoRecording(QMediaEncoderSettings &settings) if (!hasCamera()) return; - auto *camera = static_cast<QQnxCamera*>(m_session->camera()); + auto *camera = static_cast<QQnxPlatformCamera*>(m_session->camera()); camera->setMediaEncoderSettings(settings); camera->setOutputUrl(outputLocation()); - camera->start(); + + if (camera->startVideoRecording()) + stateChanged(QMediaRecorder::RecordingState); } void QQnxMediaRecorder::stopVideoRecording() @@ -130,10 +133,11 @@ void QQnxMediaRecorder::stopVideoRecording() if (!hasCamera()) return; - auto *camera = static_cast<QQnxCamera*>(m_session->camera()); + auto *camera = static_cast<QQnxPlatformCamera*>(m_session->camera()); camera->stop(); + stateChanged(QMediaRecorder::StoppedState); } bool QQnxMediaRecorder::hasCamera() const |