检查 PyGame 混音器通道是否正在播放声音
Check If A PyGame Mixer Channel Is Playing A Sound
我正在寻找一种方法来查看 pygame.mixer.Channel
当前是否正在播放声音。因此,例如仅在特定频道播放的声音结束后才做某事。这是我当前播放声音的代码:
import pygame
pygame.mixer.pre_init()
pygame.mixer.init()
pygame.init()
pygame.mixer.Channel(0).play(pygame.mixer.Sound('coolsound.wav'), maxtime=2000)
我在想一个像这样的 if 语句:
if pygame.mixer.Channel(0) = playing a sound:
print("playing a sound")
else:
print("not playing")
显然这行不通,只是为了让您了解我在寻找什么。
谢谢!
我得到了答案。使用 get_busy() 我可以检查频道是否正在播放声音,它是 returns True
或 False
。这是我的最终代码:
if pygame.mixer.Channel(0).get_busy() == True:
print("playing a sound")
else:
print("not playing")
这里是 link 文档以获取更多信息:https://www.pygame.org/docs/ref/mixer.html#pygame.mixer.get_busy
我正在寻找一种方法来查看 pygame.mixer.Channel
当前是否正在播放声音。因此,例如仅在特定频道播放的声音结束后才做某事。这是我当前播放声音的代码:
import pygame
pygame.mixer.pre_init()
pygame.mixer.init()
pygame.init()
pygame.mixer.Channel(0).play(pygame.mixer.Sound('coolsound.wav'), maxtime=2000)
我在想一个像这样的 if 语句:
if pygame.mixer.Channel(0) = playing a sound:
print("playing a sound")
else:
print("not playing")
显然这行不通,只是为了让您了解我在寻找什么。 谢谢!
我得到了答案。使用 get_busy() 我可以检查频道是否正在播放声音,它是 returns True
或 False
。这是我的最终代码:
if pygame.mixer.Channel(0).get_busy() == True:
print("playing a sound")
else:
print("not playing")
这里是 link 文档以获取更多信息:https://www.pygame.org/docs/ref/mixer.html#pygame.mixer.get_busy