0

我的一个项目是用 Qt5/c++ 编写的,使用 QMediaPlayer 类来读取音频文件。只要我在 Linux 上运行这个项目,一切都很好。因为我想在 Windows 上运行我的程序,所以我使用MXE来编译我的代码并为 Windows 系统创建一个二进制文件。

该程序似乎没问题,除了 QMediaPlayer 类的这个问题。当程序在 Windows 系统上运行时,我读到了这条消息:

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

通过谷歌搜索,我了解到 QMediaPlayer 使用了几个插件,每个平台都不同。在 Windows 上,WMF 插件是微软独有的,DirectShow 似乎没用;其他人建议使用其他外部插件,如 portaudio、SdlAudio 或 OpenAI。

我该如何解决这个问题?

4

1 回答 1

1

我发现了问题并知道如何解决它:根据这个线程,只需将以下行添加到您的 .pro 文件中:

QTPLUGIN += dsengine qtmedia_audioengine
于 2014-08-26T21:19:26.630 回答