C++ 带有QML的音频-无法播放wav文件
3天来,我遇到了一个棘手的问题! 我已经使用Yocto基于Colibri T20板为我的嵌入式设备构建了一个映像。 我使用X11添加了Qt5(因为nvidia的Tegra20驱动程序仅支持带有X11的hw accel…)。 在这一点上,一切正常。 我还生成了相应的SDK,用于为相应的平台构建应用程序。。 很好 我写了一个简单的应用程序来播放音频文件,非常基本…只是为了播放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
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吗?