在我的歌曲(music.mp3)结束后,它不会重播。我有以下代码:
# import pygame and other code
pygame.mixer.music.load('music.mp3')
pygame.mixer.music.play()
pygame.mixer.music.rewind()
pygame.init()
它不应该重播吗?如果没有,我怎么在它结束时重播?
答案 0 :(得分:0)
您的代码没有按照您的想法执行。它开始播放MP3,但play()
通话不会等到文件播放,立即返回,异步播放音乐。因此,启动一首歌并立即倒入下一行代码中没有任何意义。如果您希望音乐不止一次播放,请查看pygame.mixer.music.play()的loop
参数。它允许播放音乐一定次数或无限期播放。
答案 1 :(得分:0)
播放功能需要整数次才能播放声音。 -1将其设置为无限。
pygame.mixer.music.play(-1)
编辑: 在设置混音器之前启动pygame是正确的做法,因为pygame.init()也调用了pygame.mixer.init()。