diff --git a/src/plugins/directshow/camera/dscamerasession.cpp b/src/plugins/directshow/camera/dscamerasession.cpp index 2790ec284c80e6afcb5a1d61c547352c4c5a1c73..40e54a94db7ec68390d05cdbb378240be3b66137 100644 --- a/src/plugins/directshow/camera/dscamerasession.cpp +++ b/src/plugins/directshow/camera/dscamerasession.cpp @@ -551,7 +551,7 @@ void DSCameraSession::presentFrame() m_presentMutex.unlock(); QImage captureImage; - int captureId; + const int captureId = m_currentImageId; m_captureMutex.lock(); @@ -568,8 +568,6 @@ void DSCameraSession::presentFrame() m_capturedFrame.unmap(); - captureId = m_currentImageId; - QtConcurrent::run(this, &DSCameraSession::saveCapturedImage, m_currentImageId, captureImage, m_imageCaptureFileName); @@ -600,8 +598,6 @@ void DSCameraSession::saveCapturedImage(int id, const QImage &image, const QStri bool DSCameraSession::createFilterGraph() { // Previously containered in <qedit.h>. - static const IID iID_ISampleGrabber = { 0x6B652FFF, 0x11FE, 0x4fce, { 0x92, 0xAD, 0x02, 0x66, 0xB5, 0xD7, 0xC7, 0x8F } }; - static const CLSID cLSID_SampleGrabber = { 0xC1F400A0, 0x3F08, 0x11d3, { 0x9F, 0x0B, 0x00, 0x60, 0x08, 0x03, 0x9E, 0x37 } }; static const CLSID cLSID_NullRenderer = { 0xC1F400A4, 0x3F08, 0x11d3, { 0x9F, 0x0B, 0x00, 0x60, 0x08, 0x03, 0x9E, 0x37 } }; HRESULT hr; @@ -802,7 +798,7 @@ bool DSCameraSession::configurePreviewFormat() } // Set sample grabber format (always RGB32) - static const AM_MEDIA_TYPE grabberFormat { MEDIATYPE_Video, MEDIASUBTYPE_RGB32, 0, 0, 0, FORMAT_VideoInfo }; + static const AM_MEDIA_TYPE grabberFormat { MEDIATYPE_Video, MEDIASUBTYPE_RGB32, 0, 0, 0, FORMAT_VideoInfo, nullptr, 0, nullptr}; if (!m_previewSampleGrabber->setMediaType(&grabberFormat)) return false; diff --git a/src/plugins/directshow/helpers/directshowmediatype.cpp b/src/plugins/directshow/helpers/directshowmediatype.cpp index 586b6bd80a37cd5c2a336b2a817af9b58c60a870..d9ddf8248b1fb928ea8a72d61d991b8de4528854 100644 --- a/src/plugins/directshow/helpers/directshowmediatype.cpp +++ b/src/plugins/directshow/helpers/directshowmediatype.cpp @@ -76,7 +76,7 @@ bool DirectShowMediaType::isPartiallySpecified(const AM_MEDIA_TYPE *mediaType) } DirectShowMediaType::DirectShowMediaType() - : mediaType({ GUID_NULL, GUID_NULL, TRUE, FALSE, 1 }) + : mediaType({ GUID_NULL, GUID_NULL, TRUE, FALSE, 1, GUID_NULL, nullptr, 0, nullptr}) { } diff --git a/src/plugins/directshow/helpers/directshowmediatype.h b/src/plugins/directshow/helpers/directshowmediatype.h index b9aa989f0d8bd77a80c3e1447e0338635cf8df5c..7849ca9b0b180338f8aa6a211648c1e1b23d99a8 100644 --- a/src/plugins/directshow/helpers/directshowmediatype.h +++ b/src/plugins/directshow/helpers/directshowmediatype.h @@ -67,8 +67,8 @@ public: inline AM_MEDIA_TYPE *operator &() Q_DECL_NOTHROW { return &mediaType; } inline AM_MEDIA_TYPE *operator ->() Q_DECL_NOTHROW { return &mediaType; } - inline const AM_MEDIA_TYPE *const operator &() const Q_DECL_NOTHROW { return &mediaType; } - inline const AM_MEDIA_TYPE *const operator ->() const Q_DECL_NOTHROW { return &mediaType; } + inline const AM_MEDIA_TYPE *operator &() const Q_DECL_NOTHROW { return &mediaType; } + inline const AM_MEDIA_TYPE *operator ->() const Q_DECL_NOTHROW { return &mediaType; } static void init(AM_MEDIA_TYPE *type); static void copy(AM_MEDIA_TYPE *target, const AM_MEDIA_TYPE *source);