在Qt中一次播放多个声音

时间:2010-04-16 02:36:14

标签: windows debugging qt audio

我正在尝试使用Qt播放背景音乐和声音效果。但是,我不能同时播放多个声音。例如:

QSound::play("Music.wav");
QSound::play("Effect.wav");

当运行此代码时(在Windows上),您可以听到Music.wav刚刚开始播放,但随后它停止并且Effect.wav播放。有没有办法让这两个声音一次播放?

1 个答案:

答案 0 :(得分:1)

您正在使用静态方法。

为每个实例化实例化一个QSound对象:

QSound music("Music.wav");
QSound effect("Effect.wav");
music.play();
effect.play();

这取决于底层平台的音频设施(参见:http://doc.trolltech.com/4.6/qsound.html#details),所以如果第一次播放在播放第二个播放时仍然停止...这就是原因。那时你想看看QT Phonon模块:http://doc.trolltech.com/4.6/phonon-module.html