Important: Please read the Qt Code of Conduct -

Qt5Multimedia Problem - no service found for - "org.qt-project.qt.mediaplayer"

  • I am developing a QtWebkit application that have to play a video. However, my Qt application cannot play a video with the runtime debugging log,

    • defaultServiceProvider::requestService(): no service found for - "org.qt-project.qt.mediaplayer"

    I build a Qt 5.4.1 source code myself and get Qt DLLs from that building. In addition, I build an webkit source code separately from the Qt building by running the perl script "build-webkit".

    My configuration as follows,

    • OS : Windows7 x64
    • Qt Version : 5.4.1
    • Compiler : win32 msvc2012
    • Qt configure option
      • congifure -prefix %CD%\qtbase -debug -opensource -qt-zlib -platform win32-msvc2012 -icu -opengl desktop -nomake examples -nomake tests -skip qtdoc -skip qtmacextras -skip qtquick1 -skip qtquickcontrols -skip qtscript -skip qtserialport -skip qtsvg -skip qttools -skip qtwayland -skip qtwebengine -skip qtwebkit-examples -skip qtwinextras -skip qtx11extras
    • Webkit version : 538

    I have read many threads related to this problem. Many of them indicates the solution, but this dose not solve my case.

    After building Qt, I think there should be the DLLs required to play a video such as dsengine.dll or wmfengine.dll in "qtbase/plugins/mediaservice" folder. However, in my case, that folder only contains qtmedia_audioengined.dll.

    In addition, here is some messages in "qtmultimedia/config.log".

    • test openal FAILED
      test directshow FAILED
      test wmsdk FAILED
      test wmp FAILED
      test evr FAILED

    I enabled the environment variable "QT_DEBUG_PLUGINS", and got the messages as follows during runtime.

    • QFactoryLoader::QFactoryLoader() checking directory path "C:/GitHub/CloudUiServer/Win32/Debug/mediaservice" ...
      QMediaPluginLoader: loading metadata for iid "org.qt-project.qt.mediaserviceproviderfactory/5.0" at location "/mediaservice"
      QMediaPluginLoader: Inserted index 0 into metadata: QJsonObject({"Keys":["audiocapture"],"Services":["org.qt-project.qt.audiosource"],"index":0})
      QMediaPluginLoader: Inserting new list for key: "org.qt-project.qt.audiosource"
      defaultServiceProvider::requestService(): no service found for - "org.qt-project.qt.mediaplayer"

    Please help me.

Log in to reply