gpt4 book ai didi

c++ - Mix_Halt 特定音轨?

转载 作者:行者123 更新时间:2023-11-30 05:19:58 25 4
gpt4 key购买 nike

在 SDL Mix 中有没有办法停止特定的 Mix_Music 轨道?例如。像这样:

//music1 = the target music track to halt
if(condition)
{
Mix_Halt(Music1);
}

谢谢。

最佳答案

只有一首 Mix_Music 轨道。当你开始用Mix_PlayMusic播放音乐时,先前播放的音乐将自动停止(可能带有淡出)。如果您想明确停止当前正在播放的 Mix_Music 轨道,你可以使用 Mix_HaltMusic .

如果你想同时控制声音,你应该使用Mix_Chunk对象代替。这些样本可以在多个 channels 上播放,可以单独控制,例如:

Mix_Chunk* chunk1 = Mix_LoadWAV("chunk1.wav");
Mix_Chunk* chunk2 = Mix_LoadWAV("chunk2.wav");

Mix_PlayChannel(1, chunk1, -1); // Play chunk1 on channel 1
Mix_PlayChannel(2, chunk2, -1); // Play chunk2 on channel 2

if (condition)
// Only halt channel 1, while channel 2 keeps playing
Mix_HaltChannel(1);

您可以在 documentation 中找到所有这些信息.

关于c++ - Mix_Halt 特定音轨?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40901532/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com