3

我使用 TI 提供的工具链及其 SDK 6.00.00 交叉编译了 TI AM335x 板的 Qt 5.2.1。

不幸的是,我无法在 QML 中重现任何视频......

调试控制台告诉:

defaultServiceProvider::requestService(): no service found for – “org.qt-project.qt.mediaplayer”

我在交叉编译中缺少什么吗?也许一些依赖?有人可以帮助我确定我缺少什么吗?

您可以在此处找到我的交叉编译配置,并在此处找到应用程序在设置环境变量时生成的完整消息跟踪QT_DEBUG_PLUGIN

4

1 回答 1

3

您缺少可以实际播放音频的 QtMultimedia 后端。要么它没有安装到正确的目录中,要么它没有被构建。由于您的日志输出表明找到了一个后端(音频捕获),我会排除安装问题。

您需要使用适当的依赖项重建您的 QtMultimedia。例如,在构建 QtMultimedia 时发现 gstreamer 时,将构建一个 GStreamer 后端插件。Qt 文档有一个可用后端列表

当您构建 QtMultimedia 时,它实际上会告诉您它找到了哪些库,这表明将构建哪些后端。这是在桌面 Linux 的 QtMultimedia 上运行 qmake 时的示例输出 - 它为我构建了一个 gstreamer 后端:

Running qmake /home/thomas/src/qt/qtmultimedia-stable ...
Info: creating cache file /home/thomas/build/qt/qtmultimedia-stable/.qmake.cache
Checking for openal... no
Checking for alsa... yes
Checking for pulseaudio... no
Checking for gstreamer... yes
Checking for gstreamer_photography... no
Checking for gstreamer_encodingprofiles... yes
Checking for gstreamer_appsrc... yes
Checking for resourcepolicy... no
于 2014-04-09T18:28:46.250 回答