0

我正在播放一个 MIDI 文件,并且我有一个计时器可以定期检查别名的状态。当它停止时,它执行:

mciSendString(L"seek Music to start", NULL, 0, NULL);
mciSendString(L"play Music", NULL, 0, NULL);

我将其用作我正在创建的基本游戏的一部分。我注意到,每当歌曲重复播放时,应用程序都会在瞬间冻结。我认为这是由于我每次加载文件造成的,但如果我已经加载它并且只是在其中寻找,它不应该放慢速度,不是吗?我怎样才能让它不延迟?

我知道 MCI 可能不是播放 MIDI 文件的最佳选择。但是,我的程序只需要将两个 MIDI 文件加载到内存中并循环播放它们。最初我查看了第三方库,但其中大多数看起来比我需要的要多得多,而且其中很多都过于复杂。但是,如果有一个真正基本的、简单的可以满足我的需要,我很想听听。我不是在寻找多层 3d 声音或任何东西——只是加载到内存、播放和重复的能力。

4

1 回答 1

1

我正在和一位朋友交谈,他建议我使用线程。“嗯,嗯”,我想。“我怎么可能没有想到呢?”

于 2013-06-01T07:55:49.843 回答