Enabled wmf plugin on Windows again
authorLing Hu <ling.hu@nokia.com>
Wed, 20 Jun 2012 02:01:24 +0000 (12:01 +1000)
committerQt by Nokia <qt-info@nokia.com>
Wed, 20 Jun 2012 04:41:49 +0000 (06:41 +0200)
Change-Id: Ia1fe3ef6ec8f70888c7beb390678935ad9995a90
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
src/plugins/plugins.pro
src/plugins/wmf/player/evr9videowindowcontrol.cpp
src/plugins/wmf/player/mfmetadatacontrol.cpp
src/plugins/wmf/player/mfplayerservice.cpp
src/plugins/wmf/wmf.pro
src/plugins/wmf/wmfserviceplugin.cpp

index 08de96d..9f94c5f 100644 (file)
@@ -14,7 +14,7 @@ win32 {
 
 win32 {
     contains(config_test_directshow, yes): SUBDIRS += directshow
-#    contains(config_test_wmf, yes) : SUBDIRS += wmf
+    contains(config_test_wmf, yes) : SUBDIRS += wmf
 }
 
 unix:!mac {
index 689847d..89880ea 100644 (file)
@@ -40,6 +40,7 @@
 ****************************************************************************/
 
 #include "evr9videowindowcontrol.h"
+#include <QtWidgets/qwidget.h>
 #include <QtCore/qdebug.h>
 #include <QtCore/qglobal.h>
 
@@ -106,7 +107,7 @@ void Evr9VideoWindowControl::setWinId(WId id)
     }
 
     if (m_displayControl) {
-        m_displayControl->SetVideoWindow(m_windowId);
+        m_displayControl->SetVideoWindow(HWND(m_windowId));
     }
 }
 
@@ -170,7 +171,7 @@ void Evr9VideoWindowControl::repaint()
     }
 
     PAINTSTRUCT paint;
-    if (HDC dc = ::BeginPaint(m_windowId, &paint)) {
+    if (HDC dc = ::BeginPaint(HWND(m_windowId), &paint)) {
         HPEN pen = ::CreatePen(PS_SOLID, 1, m_windowColor);
         HBRUSH brush = ::CreateSolidBrush(m_windowColor);
         ::SelectObject(dc, pen);
@@ -185,7 +186,7 @@ void Evr9VideoWindowControl::repaint()
 
         ::DeleteObject(pen);
         ::DeleteObject(brush);
-        ::EndPaint(m_windowId, &paint);
+        ::EndPaint(HWND(m_windowId), &paint);
     }
 }
 
index 6671a5c..a21787e 100644 (file)
@@ -81,7 +81,7 @@ QVariant MFMetaDataControl::metaData(const QString &key) const
     if (m_content)
         hr = m_content->GetValue(m_commonKeys[index], &var);
     else if (m_metaData)
-        hr = m_metaData->GetProperty(m_commonNames[index].utf16(), &var);
+        hr = m_metaData->GetProperty(reinterpret_cast<LPCWSTR>(m_commonNames[index].utf16()), &var);
 
     if (SUCCEEDED(hr))
         value = convertValue(var);
@@ -98,7 +98,7 @@ QVariant MFMetaDataControl::convertValue(const PROPVARIANT& var) const
     //add more later if necessary
     switch (var.vt) {
     case VT_LPWSTR:
-        value = QString::fromUtf16(var.pwszVal);
+        value = QString::fromUtf16(reinterpret_cast<const ushort*>(var.pwszVal));
         break;
     case VT_UI4:
         value = uint(var.ulVal);
@@ -133,8 +133,6 @@ void MFMetaDataControl::updateSource(IMFPresentationDescriptor* sourcePD, IMFMed
     m_availableMetaDatas.clear();
     m_commonKeys.clear();
     m_commonNames.clear();
-    m_extendedMetaDatas.clear();
-    m_extendedKeys.clear();
 
     if (SUCCEEDED(MFGetService(mediaSource, MF_PROPERTY_HANDLER_SERVICE, IID_PPV_ARGS(&m_content)))) {
         DWORD cProps;
@@ -196,9 +194,9 @@ void MFMetaDataControl::updateSource(IMFPresentationDescriptor* sourcePD, IMFMed
                             m_availableMetaDatas.push_back(QtMultimedia::MetaData::Copyright);
                             //TODO: add more common keys
                         } else {
-                            m_availableMetaDatas.push_back(QString::fromUtf16(sName));
+                            m_availableMetaDatas.push_back(QString::fromUtf16(reinterpret_cast<const ushort*>(sName)));
                         }
-                        m_commonNames.push_back(QString::fromUtf16(sName));
+                        m_commonNames.push_back(QString::fromUtf16(reinterpret_cast<const ushort*>(sName)));
                     }
                 }
                 PropVariantClear(&varNames);
index 9c863ae..c5f24cc 100644 (file)
@@ -44,7 +44,7 @@
 #include <QtCore/qdebug.h>
 
 #include "mfplayercontrol.h"
-#ifndef Q_WS_SIMULATOR
+#if defined(HAVE_WIDGETS) && !defined(Q_WS_SIMULATOR)
 #include "evr9videowindowcontrol.h"
 #endif
 #include "mfvideorenderercontrol.h"
index 38c0888..9da545a 100644 (file)
@@ -18,3 +18,6 @@ HEADERS += wmfserviceplugin.h
 SOURCES += wmfserviceplugin.cpp
 
 include (player/player.pri)
+
+OTHER_FILES += \
+    wmf.json
index 6876d28..34536ba 100644 (file)
@@ -47,7 +47,6 @@
 #ifdef QMEDIA_MEDIAFOUNDATION_PLAYER
 #include "mfplayerservice.h"
 #endif
-#include <qmediaserviceprovider.h>
 
 QMediaService* WMFServicePlugin::create(QString const& key)
 {