summaryrefslogtreecommitdiffstats
path: root/src/plugins/wmf
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/wmf')
-rw-r--r--src/plugins/wmf/decoder/decoder.pri6
-rw-r--r--src/plugins/wmf/mfstream.cpp2
-rw-r--r--src/plugins/wmf/player/mfactivate.cpp (renamed from src/plugins/wmf/mfactivate.cpp)0
-rw-r--r--src/plugins/wmf/player/mfactivate.h (renamed from src/plugins/wmf/mfactivate.h)0
-rw-r--r--src/plugins/wmf/player/mftvideo.cpp (renamed from src/plugins/wmf/mftvideo.cpp)0
-rw-r--r--src/plugins/wmf/player/mftvideo.h (renamed from src/plugins/wmf/mftvideo.h)0
-rw-r--r--src/plugins/wmf/player/player.pri13
-rw-r--r--src/plugins/wmf/player/samplegrabber.cpp (renamed from src/plugins/wmf/samplegrabber.cpp)0
-rw-r--r--src/plugins/wmf/player/samplegrabber.h (renamed from src/plugins/wmf/samplegrabber.h)0
-rw-r--r--src/plugins/wmf/sourceresolver.cpp3
-rw-r--r--src/plugins/wmf/wmf.pro15
-rw-r--r--src/plugins/wmf/wmf_audiodecode.json4
-rw-r--r--src/plugins/wmf/wmfserviceplugin.cpp4
-rw-r--r--src/plugins/wmf/wmfserviceplugin.h6
14 files changed, 34 insertions, 19 deletions
diff --git a/src/plugins/wmf/decoder/decoder.pri b/src/plugins/wmf/decoder/decoder.pri
index 992e710fe..7637ac848 100644
--- a/src/plugins/wmf/decoder/decoder.pri
+++ b/src/plugins/wmf/decoder/decoder.pri
@@ -1,7 +1,7 @@
INCLUDEPATH += $$PWD
-LIBS += -lstrmiids -ldmoguids -luuid -lmsdmo -lole32 -loleaut32 -lMf -lMfuuid -lMfplat \
- -lPropsys -lmfreadwrite -lwmcodecdspuuid
+LIBS += -lmfreadwrite -lwmcodecdspuuid
+QMAKE_USE += wmf
HEADERS += \
$$PWD/mfdecoderservice.h \
@@ -11,4 +11,4 @@ HEADERS += \
SOURCES += \
$$PWD/mfdecoderservice.cpp \
$$PWD/mfdecodersourcereader.cpp \
- $$PWD/mfaudiodecodercontrol.cpp \ No newline at end of file
+ $$PWD/mfaudiodecodercontrol.cpp
diff --git a/src/plugins/wmf/mfstream.cpp b/src/plugins/wmf/mfstream.cpp
index 3ae6324af..fd95bf20b 100644
--- a/src/plugins/wmf/mfstream.cpp
+++ b/src/plugins/wmf/mfstream.cpp
@@ -236,7 +236,7 @@ STDMETHODIMP MFStream::Seek(
break;
}
bool seekOK = m_stream->seek(pos);
- if (*pqwCurrentPosition)
+ if (pqwCurrentPosition)
*pqwCurrentPosition = pos;
if (seekOK)
return S_OK;
diff --git a/src/plugins/wmf/mfactivate.cpp b/src/plugins/wmf/player/mfactivate.cpp
index e06906584..e06906584 100644
--- a/src/plugins/wmf/mfactivate.cpp
+++ b/src/plugins/wmf/player/mfactivate.cpp
diff --git a/src/plugins/wmf/mfactivate.h b/src/plugins/wmf/player/mfactivate.h
index 3243296e8..3243296e8 100644
--- a/src/plugins/wmf/mfactivate.h
+++ b/src/plugins/wmf/player/mfactivate.h
diff --git a/src/plugins/wmf/mftvideo.cpp b/src/plugins/wmf/player/mftvideo.cpp
index 747fe6aea..747fe6aea 100644
--- a/src/plugins/wmf/mftvideo.cpp
+++ b/src/plugins/wmf/player/mftvideo.cpp
diff --git a/src/plugins/wmf/mftvideo.h b/src/plugins/wmf/player/mftvideo.h
index ffcb80b32..ffcb80b32 100644
--- a/src/plugins/wmf/mftvideo.h
+++ b/src/plugins/wmf/player/mftvideo.h
diff --git a/src/plugins/wmf/player/player.pri b/src/plugins/wmf/player/player.pri
index c24370eea..38ccb82a6 100644
--- a/src/plugins/wmf/player/player.pri
+++ b/src/plugins/wmf/player/player.pri
@@ -1,6 +1,7 @@
INCLUDEPATH += $$PWD
-LIBS += -lstrmiids -ldmoguids -luuid -lmsdmo -lgdi32 -luser32 -lole32 -loleaut32 -lMf -lMfuuid -lMfplat -lPropsys
+LIBS += -lgdi32 -luser32
+QMAKE_USE += wmf
DEFINES += QMEDIA_MEDIAFOUNDATION_PLAYER
@@ -13,7 +14,10 @@ HEADERS += \
$$PWD/mfmetadatacontrol.h \
$$PWD/mfaudioprobecontrol.h \
$$PWD/mfvideoprobecontrol.h \
- $$PWD/mfevrvideowindowcontrol.h
+ $$PWD/mfevrvideowindowcontrol.h \
+ $$PWD/samplegrabber.h \
+ $$PWD/mftvideo.h \
+ $$PWD/mfactivate.h
SOURCES += \
$$PWD/mfplayerservice.cpp \
@@ -24,6 +28,9 @@ SOURCES += \
$$PWD/mfmetadatacontrol.cpp \
$$PWD/mfaudioprobecontrol.cpp \
$$PWD/mfvideoprobecontrol.cpp \
- $$PWD/mfevrvideowindowcontrol.cpp
+ $$PWD/mfevrvideowindowcontrol.cpp \
+ $$PWD/samplegrabber.cpp \
+ $$PWD/mftvideo.cpp \
+ $$PWD/mfactivate.cpp
include($$PWD/../../common/evr.pri)
diff --git a/src/plugins/wmf/samplegrabber.cpp b/src/plugins/wmf/player/samplegrabber.cpp
index d137335f3..d137335f3 100644
--- a/src/plugins/wmf/samplegrabber.cpp
+++ b/src/plugins/wmf/player/samplegrabber.cpp
diff --git a/src/plugins/wmf/samplegrabber.h b/src/plugins/wmf/player/samplegrabber.h
index 9ca673a1b..9ca673a1b 100644
--- a/src/plugins/wmf/samplegrabber.h
+++ b/src/plugins/wmf/player/samplegrabber.h
diff --git a/src/plugins/wmf/sourceresolver.cpp b/src/plugins/wmf/sourceresolver.cpp
index 78163e97f..f10f68c42 100644
--- a/src/plugins/wmf/sourceresolver.cpp
+++ b/src/plugins/wmf/sourceresolver.cpp
@@ -37,12 +37,13 @@
**
****************************************************************************/
-#include "mfplayersession.h"
#include "mfstream.h"
#include "sourceresolver.h"
#include <Mferror.h>
#include <nserror.h>
#include <QtCore/qfile.h>
+#include <QtCore/qdebug.h>
+#include <QtMultimedia/qmediaplayer.h>
/*
SourceResolver is separated from MFPlayerSession to handle the work of resolving a media source
diff --git a/src/plugins/wmf/wmf.pro b/src/plugins/wmf/wmf.pro
index e83c51595..c75efe28c 100644
--- a/src/plugins/wmf/wmf.pro
+++ b/src/plugins/wmf/wmf.pro
@@ -10,24 +10,19 @@ INCLUDEPATH += .
HEADERS += \
wmfserviceplugin.h \
mfstream.h \
- sourceresolver.h \
- samplegrabber.h \
- mftvideo.h \
- mfactivate.h
+ sourceresolver.h
SOURCES += \
wmfserviceplugin.cpp \
mfstream.cpp \
- sourceresolver.cpp \
- samplegrabber.cpp \
- mftvideo.cpp \
- mfactivate.cpp
+ sourceresolver.cpp
-include (player/player.pri)
+contains(QT_CONFIG, wmf-backend): include (player/player.pri)
include (decoder/decoder.pri)
OTHER_FILES += \
- wmf.json
+ wmf.json \
+ wmf_audiodecode.json
PLUGIN_TYPE = mediaservice
PLUGIN_CLASS_NAME = WMFServicePlugin
diff --git a/src/plugins/wmf/wmf_audiodecode.json b/src/plugins/wmf/wmf_audiodecode.json
new file mode 100644
index 000000000..2a65dd758
--- /dev/null
+++ b/src/plugins/wmf/wmf_audiodecode.json
@@ -0,0 +1,4 @@
+{
+ "Keys": ["windowsmediafoundation"],
+ "Services": ["org.qt-project.qt.audiodecode"]
+}
diff --git a/src/plugins/wmf/wmfserviceplugin.cpp b/src/plugins/wmf/wmfserviceplugin.cpp
index ada1c8069..e19154aee 100644
--- a/src/plugins/wmf/wmfserviceplugin.cpp
+++ b/src/plugins/wmf/wmfserviceplugin.cpp
@@ -97,9 +97,13 @@ void WMFServicePlugin::release(QMediaService *service)
QMediaServiceProviderHint::Features WMFServicePlugin::supportedFeatures(
const QByteArray &service) const
{
+#ifdef QMEDIA_MEDIAFOUNDATION_PLAYER
if (service == Q_MEDIASERVICE_MEDIAPLAYER)
return QMediaServiceProviderHint::StreamPlayback;
else
+#else
+ Q_UNUSED(service);
+#endif
return QMediaServiceProviderHint::Features();
}
diff --git a/src/plugins/wmf/wmfserviceplugin.h b/src/plugins/wmf/wmfserviceplugin.h
index cd3000199..39b7b86d9 100644
--- a/src/plugins/wmf/wmfserviceplugin.h
+++ b/src/plugins/wmf/wmfserviceplugin.h
@@ -54,7 +54,11 @@ class WMFServicePlugin
Q_INTERFACES(QMediaServiceSupportedDevicesInterface)
Q_INTERFACES(QMediaServiceDefaultDeviceInterface)
Q_INTERFACES(QMediaServiceFeaturesInterface)
+#ifdef QMEDIA_MEDIAFOUNDATION_PLAYER
Q_PLUGIN_METADATA(IID "org.qt-project.qt.mediaserviceproviderfactory/5.0" FILE "wmf.json")
+#else
+ Q_PLUGIN_METADATA(IID "org.qt-project.qt.mediaserviceproviderfactory/5.0" FILE "wmf_audiodecode.json")
+#endif
public:
QMediaService* create(QString const& key);
void release(QMediaService *service);
@@ -66,4 +70,4 @@ public:
QString deviceDescription(const QByteArray &service, const QByteArray &device);
};
-#endif // DSSERVICEPLUGIN_H
+#endif // WMFSERVICEPLUGIN_H