summaryrefslogtreecommitdiffstats
path: root/src/plugins/directshow
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/directshow')
-rw-r--r--src/plugins/directshow/camera/camera.pri10
-rw-r--r--src/plugins/directshow/camera/dscameraservice.cpp13
-rw-r--r--src/plugins/directshow/camera/dscameraservice.h2
-rw-r--r--src/plugins/directshow/camera/dsvideodevicecontrol.cpp8
-rw-r--r--src/plugins/directshow/camera/dsvideodevicecontrol.h1
-rw-r--r--src/plugins/directshow/directshow.pro11
-rw-r--r--src/plugins/directshow/player/directshowplayerservice.cpp12
-rw-r--r--src/plugins/directshow/player/directshowplayerservice.h4
-rw-r--r--src/plugins/directshow/player/player.pri6
9 files changed, 38 insertions, 29 deletions
diff --git a/src/plugins/directshow/camera/camera.pri b/src/plugins/directshow/camera/camera.pri
index 42f5999a2..3067497bd 100644
--- a/src/plugins/directshow/camera/camera.pri
+++ b/src/plugins/directshow/camera/camera.pri
@@ -13,19 +13,21 @@ HEADERS += \
$$PWD/dsvideodevicecontrol.h \
$$PWD/dsimagecapturecontrol.h \
$$PWD/dscamerasession.h \
- $$PWD/dsvideowidgetcontrol.h \
$$PWD/dscameraservice.h \
$$PWD/directshowglobal.h
-
SOURCES += \
$$PWD/dscameraservice.cpp \
$$PWD/dscameracontrol.cpp \
$$PWD/dsvideorenderer.cpp \
$$PWD/dsvideodevicecontrol.cpp \
$$PWD/dsimagecapturecontrol.cpp \
- $$PWD/dscamerasession.cpp \
- $$PWD/dsvideowidgetcontrol.cpp
+ $$PWD/dscamerasession.cpp
+
+contains(config_test_widgets, yes) {
+ HEADERS += $$PWD/dsvideowidgetcontrol.h
+ SOURCES += $$PWD/dsvideowidgetcontrol.cpp
+}
INCLUDEPATH += $(DXSDK_DIR)/include
LIBS += -lstrmiids -ldmoguids -luuid -lmsdmo -lole32 -loleaut32
diff --git a/src/plugins/directshow/camera/dscameraservice.cpp b/src/plugins/directshow/camera/dscameraservice.cpp
index 3b42a18d1..83ff0c965 100644
--- a/src/plugins/directshow/camera/dscameraservice.cpp
+++ b/src/plugins/directshow/camera/dscameraservice.cpp
@@ -41,9 +41,11 @@
#include <QtCore/qvariant.h>
#include <QtCore/qdebug.h>
+
+#if defined(HAVE_WIDGETS)
#include <QtWidgets/qwidget.h>
#include <QVideoWidgetControl.h>
-
+#endif
#include "dscameraservice.h"
#include "dscameracontrol.h"
@@ -51,7 +53,10 @@
#include "dsvideorenderer.h"
#include "dsvideodevicecontrol.h"
#include "dsimagecapturecontrol.h"
+
+#if defined(HAVE_WIDGETS)
#include "dsvideowidgetcontrol.h"
+#endif
QT_BEGIN_NAMESPACE
@@ -68,7 +73,9 @@ DSCameraService::DSCameraService(QObject *parent):
m_imageCapture = new DSImageCaptureControl(m_session);
+#if defined(HAVE_WIDGETS)
m_viewFinderWidget = new DSVideoWidgetControl(m_session);
+#endif
m_device = QByteArray("default");
}
@@ -79,7 +86,9 @@ DSCameraService::~DSCameraService()
delete m_videoDevice;
delete m_videoRenderer;
delete m_imageCapture;
+#if defined(HAVE_WIDGETS)
delete m_viewFinderWidget;
+#endif
delete m_session;
}
@@ -91,11 +100,13 @@ QMediaControl* DSCameraService::requestControl(const char *name)
if (qstrcmp(name, QCameraImageCaptureControl_iid) == 0)
return m_imageCapture;
+#if defined(HAVE_WIDGETS)
if (qstrcmp(name, QVideoWidgetControl_iid) == 0) {
if (m_viewFinderWidget) {
return m_viewFinderWidget;
}
}
+#endif
if(qstrcmp(name,QVideoRendererControl_iid) == 0)
return m_videoRenderer;
diff --git a/src/plugins/directshow/camera/dscameraservice.h b/src/plugins/directshow/camera/dscameraservice.h
index 2423801ed..2c8ef0ad6 100644
--- a/src/plugins/directshow/camera/dscameraservice.h
+++ b/src/plugins/directshow/camera/dscameraservice.h
@@ -74,7 +74,9 @@ private:
DSCameraControl *m_control;
DSCameraSession *m_session;
DSVideoOutputControl *m_videoOutput;
+#if defined(HAVE_WIDGETS)
DSVideoWidgetControl *m_viewFinderWidget;
+#endif
DSVideoDeviceControl *m_videoDevice;
DSVideoRendererControl *m_videoRenderer;
DSImageCaptureControl *m_imageCapture;
diff --git a/src/plugins/directshow/camera/dsvideodevicecontrol.cpp b/src/plugins/directshow/camera/dsvideodevicecontrol.cpp
index 11da5d357..1eef18b30 100644
--- a/src/plugins/directshow/camera/dsvideodevicecontrol.cpp
+++ b/src/plugins/directshow/camera/dsvideodevicecontrol.cpp
@@ -41,7 +41,6 @@
#include <QDebug>
#include <QFile>
-#include <QtWidgets/QIcon>
#include "dsvideodevicecontrol.h"
#include "dscamerasession.h"
@@ -135,13 +134,6 @@ QString DSVideoDeviceControl::deviceDescription(int index) const
return QString();
}
-QIcon DSVideoDeviceControl::deviceIcon(int index) const
-{
- Q_UNUSED(index)
-
- return QIcon();
-}
-
int DSVideoDeviceControl::defaultDevice() const
{
return 0;
diff --git a/src/plugins/directshow/camera/dsvideodevicecontrol.h b/src/plugins/directshow/camera/dsvideodevicecontrol.h
index 0711479e2..fa7e01596 100644
--- a/src/plugins/directshow/camera/dsvideodevicecontrol.h
+++ b/src/plugins/directshow/camera/dsvideodevicecontrol.h
@@ -60,7 +60,6 @@ public:
int deviceCount() const;
QString deviceName(int index) const;
QString deviceDescription(int index) const;
- QIcon deviceIcon(int index) const;
int defaultDevice() const;
int selectedDevice() const;
diff --git a/src/plugins/directshow/directshow.pro b/src/plugins/directshow/directshow.pro
index 80d588fd9..e027a2c7e 100644
--- a/src/plugins/directshow/directshow.pro
+++ b/src/plugins/directshow/directshow.pro
@@ -5,8 +5,6 @@ TARGET = $$qtLibraryTarget(dsengine)
PLUGIN_TYPE=mediaservice
-include (../../../common.pri)
-
QT += multimedia
DEPENDPATH += .
@@ -16,8 +14,13 @@ SOURCES += dsserviceplugin.cpp
!contains(config_test_wmsdk, yes): DEFINES += QT_NO_WMSDK
-contains(config_test_wmf, no): include (player/player.pri)
-include (camera/camera.pri)
+contains(config_test_widgets, yes) {
+ QT += multimediawidgets
+ DEFINES += HAVE_WIDGETS
+}
+
+contains(config_test_wmf, no): include(player/player.pri)
+include(camera/camera.pri)
target.path += $$[QT_INSTALL_PLUGINS]/$${PLUGIN_TYPE}
INSTALLS += target
diff --git a/src/plugins/directshow/player/directshowplayerservice.cpp b/src/plugins/directshow/player/directshowplayerservice.cpp
index 2ba142c28..ef1390fdd 100644
--- a/src/plugins/directshow/player/directshowplayerservice.cpp
+++ b/src/plugins/directshow/player/directshowplayerservice.cpp
@@ -46,7 +46,7 @@
#include "directshowmetadatacontrol.h"
#include "directshowplayercontrol.h"
#include "directshowvideorenderercontrol.h"
-#ifndef Q_WS_SIMULATOR
+#if defined(HAVE_WIDGETS) && !defined(Q_WS_SIMULATOR)
#include "vmr9videowindowcontrol.h"
#endif
@@ -83,7 +83,7 @@ DirectShowPlayerService::DirectShowPlayerService(QObject *parent)
, m_playerControl(0)
, m_metaDataControl(0)
, m_videoRendererControl(0)
-#ifndef Q_WS_SIMULATOR
+#if defined(HAVE_WIDGETS) && !defined(Q_WS_SIMULATOR)
, m_videoWindowControl(0)
#endif
, m_audioEndpointControl(0)
@@ -144,7 +144,7 @@ DirectShowPlayerService::~DirectShowPlayerService()
delete m_audioEndpointControl;
delete m_metaDataControl;
delete m_videoRendererControl;
-#ifndef Q_WS_SIMULATOR
+#if defined(HAVE_WIDGETS) && !defined(Q_WS_SIMULATOR)
delete m_videoWindowControl;
#endif
@@ -161,7 +161,7 @@ QMediaControl *DirectShowPlayerService::requestControl(const char *name)
} else if (qstrcmp(name, QMetaDataReaderControl_iid) == 0) {
return m_metaDataControl;
} else if (qstrcmp(name, QVideoRendererControl_iid) == 0) {
-#ifndef Q_WS_SIMULATOR
+#if defined(HAVE_WIDGETS) && !defined(Q_WS_SIMULATOR)
if (!m_videoRendererControl && !m_videoWindowControl) {
#else
if (!m_videoRendererControl) {
@@ -173,7 +173,7 @@ QMediaControl *DirectShowPlayerService::requestControl(const char *name)
return m_videoRendererControl;
}
-#ifndef Q_WS_SIMULATOR
+#if defined(HAVE_WIDGETS) && !defined(Q_WS_SIMULATOR)
} else if (qstrcmp(name, QVideoWindowControl_iid) == 0) {
if (!m_videoRendererControl && !m_videoWindowControl) {
m_videoWindowControl = new Vmr9VideoWindowControl;
@@ -198,7 +198,7 @@ void DirectShowPlayerService::releaseControl(QMediaControl *control)
delete m_videoRendererControl;
m_videoRendererControl = 0;
-#ifndef Q_WS_SIMULATOR
+#if defined(HAVE_WIDGETS) && !defined(Q_WS_SIMULATOR)
} else if (control == m_videoWindowControl) {
setVideoOutput(0);
diff --git a/src/plugins/directshow/player/directshowplayerservice.h b/src/plugins/directshow/player/directshowplayerservice.h
index 0f36bdf0c..6caad5fcf 100644
--- a/src/plugins/directshow/player/directshowplayerservice.h
+++ b/src/plugins/directshow/player/directshowplayerservice.h
@@ -59,7 +59,7 @@ class DirectShowAudioEndpointControl;
class DirectShowMetaDataControl;
class DirectShowPlayerControl;
class DirectShowVideoRendererControl;
-#ifndef Q_WS_SIMULATOR
+#if defined(HAVE_WIDGETS) && !defined(Q_WS_SIMULATOR)
class Vmr9VideoWindowControl;
#endif
@@ -180,7 +180,7 @@ private:
DirectShowPlayerControl *m_playerControl;
DirectShowMetaDataControl *m_metaDataControl;
DirectShowVideoRendererControl *m_videoRendererControl;
-#ifndef Q_WS_SIMULATOR
+#if defined(HAVE_WIDGETS) && !defined(Q_WS_SIMULATOR)
Vmr9VideoWindowControl *m_videoWindowControl;
#endif
DirectShowAudioEndpointControl *m_audioEndpointControl;
diff --git a/src/plugins/directshow/player/player.pri b/src/plugins/directshow/player/player.pri
index a058b0659..c30b28362 100644
--- a/src/plugins/directshow/player/player.pri
+++ b/src/plugins/directshow/player/player.pri
@@ -35,11 +35,11 @@ SOURCES += \
$$PWD/mediasamplevideobuffer.cpp \
$$PWD/videosurfacefilter.cpp
-!simulator {
-HEADERS += \
+contains(config_test_widgets, yes):!simulator {
+ HEADERS += \
$$PWD/vmr9videowindowcontrol.h
-SOURCES += \
+ SOURCES += \
$$PWD/vmr9videowindowcontrol.cpp
}