diff options
author | Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> | 2016-05-20 19:31:49 +0200 |
---|---|---|
committer | Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> | 2016-05-20 19:31:49 +0200 |
commit | bf43be097a90ed17b2807a4a7096b0a9f9c3fb8d (patch) | |
tree | d4ef32b6eb9309e9556ebb70bf11bd4f9e33dd01 | |
parent | 2a939e540a70569ae917d12c4f0459077d0df8e7 (diff) | |
parent | a0ee969c8d2f74382c0a8c9c77642d48a602577f (diff) |
Merge 5.7 into 5.7.0
Change-Id: I7b8df058f300b1fa173679bb045f4c87dc736cd2
-rw-r--r-- | src/gsttools/qgstreamerbushelper.cpp | 2 | ||||
-rw-r--r-- | src/multimedia/doc/qtmultimedia.qdocconf | 3 | ||||
-rw-r--r-- | src/plugins/winrt/qwinrtcameracontrol.cpp | 35 |
3 files changed, 26 insertions, 14 deletions
diff --git a/src/gsttools/qgstreamerbushelper.cpp b/src/gsttools/qgstreamerbushelper.cpp index bd35d4b0a..89b2c4ae7 100644 --- a/src/gsttools/qgstreamerbushelper.cpp +++ b/src/gsttools/qgstreamerbushelper.cpp @@ -58,7 +58,7 @@ public: m_tag(0), m_bus(bus), m_helper(parent), - m_intervalTimer(nullptr) + m_intervalTimer(Q_NULLPTR) { // glib event loop can be disabled either by env variable or QT_NO_GLIB define, so check the dispacher QAbstractEventDispatcher *dispatcher = QCoreApplication::eventDispatcher(); diff --git a/src/multimedia/doc/qtmultimedia.qdocconf b/src/multimedia/doc/qtmultimedia.qdocconf index 2ea23e2ee..e3d3827c5 100644 --- a/src/multimedia/doc/qtmultimedia.qdocconf +++ b/src/multimedia/doc/qtmultimedia.qdocconf @@ -43,9 +43,6 @@ qhp.QtMultimedia.subprojects.examples.sortPages = true exampledirs += ../../../examples \ snippets -# Specify example install dir under QT_INSTALL_EXAMPLES -examplesinstallpath = qtmultimedia - headerdirs += ../.. imagedirs += src/images \ diff --git a/src/plugins/winrt/qwinrtcameracontrol.cpp b/src/plugins/winrt/qwinrtcameracontrol.cpp index 40946270a..a4584487a 100644 --- a/src/plugins/winrt/qwinrtcameracontrol.cpp +++ b/src/plugins/winrt/qwinrtcameracontrol.cpp @@ -101,15 +101,30 @@ HRESULT getMediaStreamResolutions(IMediaDeviceController *device, ComPtr<IMediaEncodingProperties> properties; hr = (*propertiesList)->GetAt(index, &properties); Q_ASSERT_SUCCEEDED(hr); - ComPtr<IVideoEncodingProperties> videoProperties; - hr = properties.As(&videoProperties); - Q_ASSERT_SUCCEEDED(hr); - UINT32 width, height; - hr = videoProperties->get_Width(&width); - Q_ASSERT_SUCCEEDED(hr); - hr = videoProperties->get_Height(&height); - Q_ASSERT_SUCCEEDED(hr); - resolutions->append(QSize(width, height)); + if (type == MediaStreamType_VideoRecord || type == MediaStreamType_VideoPreview) { + ComPtr<IVideoEncodingProperties> videoProperties; + hr = properties.As(&videoProperties); + Q_ASSERT_SUCCEEDED(hr); + UINT32 width, height; + hr = videoProperties->get_Width(&width); + Q_ASSERT_SUCCEEDED(hr); + hr = videoProperties->get_Height(&height); + Q_ASSERT_SUCCEEDED(hr); + resolutions->append(QSize(width, height)); + } else if (type == MediaStreamType_Photo) { + ComPtr<IImageEncodingProperties> imageProperties; + hr = properties.As(&imageProperties); + // Asking for Photo also returns video resolutions in addition + // We skip those, as we are only interested in image Type + if (FAILED(hr) || !imageProperties) + continue; + UINT32 width, height; + hr = imageProperties->get_Width(&width); + Q_ASSERT_SUCCEEDED(hr); + hr = imageProperties->get_Height(&height); + Q_ASSERT_SUCCEEDED(hr); + resolutions->append(QSize(width, height)); + } } return resolutions->isEmpty() ? MF_E_INVALID_FORMAT : hr; } @@ -617,7 +632,7 @@ void QWinRTCameraControl::setState(QCamera::State state) } QCameraFocus::FocusModes focusMode = d->cameraFocusControl->focusMode(); - if (setFocus(focusMode) && focusMode == QCameraFocus::ContinuousFocus) + if (focusMode != 0 && setFocus(focusMode) && focusMode == QCameraFocus::ContinuousFocus) focus(); d->state = QCamera::ActiveState; |