summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorYoann Lopes <yoann.lopes@qt.io>2016-11-21 20:20:11 +0200
committerJani Heikkinen <jani.heikkinen@qt.io>2016-12-13 11:12:50 +0000
commit28f97a94ec5566877c0dd0dc5820349606a0ffa3 (patch)
treed0336cd0386d80c6ef85607b0d0d6d46776af066 /src
parent77567bad82081ffb166578bdeac52fb1f2dce464 (diff)
Fix building the WMF plugin
9df63fd6 made it possible to build only the audio decoder service from the WMF plugin. When that change was merged to 5.8 it was not ported to the new configuration system. Added a new '-mediaplayer-backend' configure option to select the media player backend to use on Windows. '-wmf-backend' is kept for backward compatibility. Change-Id: I902b2e4147f9a05b92118152020afc2638bf41e1 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Diffstat (limited to 'src')
-rw-r--r--src/multimedia/configure.json34
-rw-r--r--src/plugins/directshow/directshow.pro2
-rw-r--r--src/plugins/plugins.pro2
-rw-r--r--src/plugins/wmf/wmf.pro2
4 files changed, 30 insertions, 10 deletions
diff --git a/src/multimedia/configure.json b/src/multimedia/configure.json
index 19812d19b..d26f6f45e 100644
--- a/src/multimedia/configure.json
+++ b/src/multimedia/configure.json
@@ -10,7 +10,8 @@
"alsa": "boolean",
"gstreamer": { "type": "optionalString", "values": [ "no", "yes", "0.10", "1.0" ] },
"pulseaudio": "boolean",
- "wmf-backend": "boolean"
+ "mediaplayer-backend": { "type": "string", "values": [ "directshow", "wmf" ] },
+ "wmf-backend": { "type": "void", "name": "mediaplayer-backend", "value": "wmf" }
}
},
@@ -192,6 +193,13 @@
"condition": "config.win32 && libs.directshow",
"output": [ "feature", "privateFeature" ]
},
+ "directshow-player": {
+ "label": "DirectShow",
+ "enable": "input.mediaplayer-backend == 'directshow'",
+ "disable": "input.mediaplayer-backend == 'wmf'",
+ "condition": "features.directshow && !features.wmf-player",
+ "output": [ "privateFeature" ]
+ },
"evr": {
"label": "evr.h",
"condition": "config.win32 && tests.evr",
@@ -281,11 +289,16 @@
"condition": "config.win32 && features.directshow && tests.wshellitem",
"output": [ "feature", "privateFeature" ]
},
- "wmf-backend": {
- "label": "Windows Media Foundation backend for Qt Multimedia",
- "emitIf": "config.win32",
- "autoDetect": false,
- "condition": "libraries.wmf",
+ "wmf": {
+ "label": "Windows Media Foundation",
+ "condition": "config.win32 && libs.wmf",
+ "output": [ "privateFeature" ]
+ },
+ "wmf-player": {
+ "label": "Windows Media Foundation",
+ "enable": "input.mediaplayer-backend == 'wmf'",
+ "disable": "input.mediaplayer-backend != 'wmf'",
+ "condition": "features.wmf",
"output": [ "privateFeature" ]
}
},
@@ -307,7 +320,14 @@
"mmrenderer",
"avfoundation",
"directshow",
- "wmf-backend"
+ "wmf",
+ {
+ "message": "Media player backend",
+ "type": "firstAvailableFeature",
+ "args": "directshow-player wmf-player",
+ "condition": "config.win32"
+ }
+
]
}
]
diff --git a/src/plugins/directshow/directshow.pro b/src/plugins/directshow/directshow.pro
index 5eb4fbc96..7fe02e662 100644
--- a/src/plugins/directshow/directshow.pro
+++ b/src/plugins/directshow/directshow.pro
@@ -13,7 +13,7 @@ SOURCES += dsserviceplugin.cpp
mingw: DEFINES += NO_DSHOW_STRSAFE
include(helpers/helpers.pri)
-!qtConfig(wmf-backend): include(player/player.pri)
+qtConfig(directshow-player): include(player/player.pri)
include(camera/camera.pri)
OTHER_FILES += \
diff --git a/src/plugins/plugins.pro b/src/plugins/plugins.pro
index 099e472da..98a1bf242 100644
--- a/src/plugins/plugins.pro
+++ b/src/plugins/plugins.pro
@@ -35,7 +35,7 @@ win32:!winrt {
windowsaudio
qtConfig(directshow): SUBDIRS += directshow
- qtConfig(wmf-backend): SUBDIRS += wmf
+ qtConfig(wmf): SUBDIRS += wmf
}
diff --git a/src/plugins/wmf/wmf.pro b/src/plugins/wmf/wmf.pro
index c75efe28c..b202ff2a1 100644
--- a/src/plugins/wmf/wmf.pro
+++ b/src/plugins/wmf/wmf.pro
@@ -17,7 +17,7 @@ SOURCES += \
mfstream.cpp \
sourceresolver.cpp
-contains(QT_CONFIG, wmf-backend): include (player/player.pri)
+qtConfig(wmf-player): include (player/player.pri)
include (decoder/decoder.pri)
OTHER_FILES += \