C++ 带有QML的音频-无法播放wav文件

C++ 带有QML的音频-无法播放wav文件,c++,qml,qt5.5,C++,Qml,Qt5.5,3天来,我遇到了一个棘手的问题! 我已经使用Yocto基于Colibri T20板为我的嵌入式设备构建了一个映像。 我使用X11添加了Qt5(因为nvidia的Tegra20驱动程序仅支持带有X11的hw accel…)。 在这一点上,一切正常。 我还生成了相应的SDK,用于为相应的平台构建应用程序。。 很好 我写了一个简单的应用程序来播放音频文件,非常基本…只是为了播放wav文件。。。 它不工作,没有声音输出 import QtMultimedia 5.5 Item { ... Audio

3天来,我遇到了一个棘手的问题! 我已经使用Yocto基于Colibri T20板为我的嵌入式设备构建了一个映像。 我使用X11添加了Qt5(因为nvidia的Tegra20驱动程序仅支持带有X11的hw accel…)。 在这一点上,一切正常。 我还生成了相应的SDK,用于为相应的平台构建应用程序。。 很好

我写了一个简单的应用程序来播放音频文件,非常基本…只是为了播放wav文件。。。 它不工作,没有声音输出

import QtMultimedia 5.5

Item {

...
Audio {
 id: audioPlayer
source: "file:///opt/track.wav"
}
..
onClick() {
  idPlayer.play()
}

}
这段代码在我的主机linux上运行良好。 但不是在我的Colibri上。 Qt5.5.1首先使用ALSA、pulseaudio(gstreamer插件…)构建。 没有输出

但在linux中,我可以使用以下方式播放wav文件:

aplay /opt/track.wav
所以我假设我的alsa驱动程序是最新的

然后,我在没有pulseaudio的情况下重新编译了Qt5.5.1。。。。 它并没有更好地发挥作用:(

老实说,我对alsa和pulseaudio物质不是很有经验。我非常困惑,因为我不明白在QtMultuimedia的抽象层下发生了什么


欢迎任何建议…这个问题简直让我发疯;)

有一些警告信息吗?你能试着用Qt(不带QML)测试播放吗?是的。我在main.cpp:QSound::play(“track.wav”)中添加了这一行;它在我的主机linux上工作正常……但在我的主机ColibriT20上不工作……Arghh.看起来很奇怪。可能是声音驱动程序的问题。你能用一些系统播放器播放这个wav文件吗?是的。aplay track.wav在控制台中工作得很好。使用纯Qt,你可以编写一个小应用程序来显示支持的代码。支持wav吗?