diff options
author | Christian Stromme <christian.stromme@qt.io> | 2016-11-21 17:09:44 +0100 |
---|---|---|
committer | Christian Stromme <christian.stromme@qt.io> | 2018-01-22 20:50:25 +0000 |
commit | 009a9d4b5d32fa73aca6cabe7d45d6a9bbae0038 (patch) | |
tree | d2afd55d9dc3582272719fda9fb28c8c02267242 /src/plugins/directshow/camera/dscameraservice.cpp | |
parent | e2bcf5d44e5f0217605c3fdf9b1e7c0b4a3bee73 (diff) |
DirectShow: Add the zoom control
Makes is possible to to control the zoom value, if the camera supports
it.
[ChangeLog][DirectShow] Added camera zoom support.
Change-Id: I7a24c7fefb947bdcfc3ff8f755aa761135cc6fde
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
Diffstat (limited to 'src/plugins/directshow/camera/dscameraservice.cpp')
-rw-r--r-- | src/plugins/directshow/camera/dscameraservice.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/plugins/directshow/camera/dscameraservice.cpp b/src/plugins/directshow/camera/dscameraservice.cpp index b4031c829..a806cabe3 100644 --- a/src/plugins/directshow/camera/dscameraservice.cpp +++ b/src/plugins/directshow/camera/dscameraservice.cpp @@ -52,6 +52,7 @@ #include "directshowcameracapturedestinationcontrol.h" #include "directshowcameracapturebufferformatcontrol.h" #include "directshowvideoprobecontrol.h" +#include "directshowcamerazoomcontrol.h" QT_BEGIN_NAMESPACE @@ -68,6 +69,7 @@ DSCameraService::DSCameraService(QObject *parent): , m_captureDestinationControl(new DirectShowCameraCaptureDestinationControl(m_session)) , m_captureBufferFormatControl(new DirectShowCameraCaptureBufferFormatControl) , m_videoProbeControl(nullptr) + , m_zoomControl(new DirectShowCameraZoomControl(m_session)) { } @@ -84,6 +86,7 @@ DSCameraService::~DSCameraService() delete m_captureDestinationControl; delete m_captureBufferFormatControl; delete m_videoProbeControl; + delete m_zoomControl; } QMediaControl* DSCameraService::requestControl(const char *name) @@ -128,6 +131,9 @@ QMediaControl* DSCameraService::requestControl(const char *name) return m_videoProbeControl; } + if (qstrcmp(name, QCameraZoomControl_iid) == 0) + return m_zoomControl; + return 0; } |