WAV文件与QML SoundEffect音频播放是扭曲的



我第一次在QML中使用SoundEffect,我得到了混合的结果,没有明确的理解为什么。我可以成功地在一个嵌入式c++设备的用户界面中使用QML SoundEffect。我无法解决的问题是为什么有些WAV文件播放起来非常清晰,而有些则不然。

我确信我的代码是正确的…这是关于如何解释音频的问题。我不能分享我正在使用的WAV文件…但是发生的事情是这样的:

有两个WAV文件:

wav_file1_that_works.wav(大小为83kb)

wav_file2_that_does_not work.wav (110kb)

这两个文件在VLC或Media Player或其他文件中播放都很好。但是当运行QML功能作为设备上的触摸反馈时,第一个WAV文件播放得很好,而第二个则不行。这似乎不是硬件问题,因为在虚拟环境中工作时,同样的问题也会出现。我怀疑在QT/QML环境中使用WAV音频有一些限制?但是我在文档中找不到任何限制。我唯一的怀疑是文件大小,或者其他一些特定的声音文件要求。

首先声明到文件的声音链接:

SoundEffect {
id: playSound
source: "qrc:/wav_file2_that_does_not work.wav"
} 

然后在UI事件上播放它(不是确切的代码,但事件肯定是这样工作的):

MyUiItem {

onMyUiTouched: {

playSound.play();
}
}

和文件1播放完美,文件2播放,但有非常扭曲的沙哑声音。

我可能不太了解WAV文件编码是如何工作的,但从表面上看,这两个文件似乎都是正确编码的。

我通过重构应用程序在压缩WAV文件时的编译方式来解决这个问题。不幸的是,我发现如果我让我的企业部署系统做它自己的事情,它会压缩包括所有多媒体在内的所有内容,除非我应用某些参数来不压缩。现在这是可行的。谢谢你的帮助。

最新更新