如何在Pygame中播放音乐?

时间:2015-12-12 04:37:19

标签: python pygame

在我的歌曲(music.mp3)结束后,它不会重播。我有以下代码:

# import pygame and other code
pygame.mixer.music.load('music.mp3')
pygame.mixer.music.play()
pygame.mixer.music.rewind()
pygame.init()

它不应该重播吗?如果没有,我怎么在它结束时重播?

2 个答案:

答案 0 :(得分:0)

您的代码没有按照您的想法执行。它开始播放MP3,但play()通话不会等到文件播放,立即返回,异步播放音乐。因此,启动一首歌并立即倒入下一行代码中没有任何意义。如果您希望音乐不止一次播放,请查看pygame.mixer.music.play()loop参数。它允许播放音乐一定次数或无限期播放。

答案 1 :(得分:0)

播放功能需要整数次才能播放声音。 -1将其设置为无限。

pygame.mixer.music.play(-1)

编辑: 在设置混音器之前启动pygame是正确的做法,因为pygame.init()也调用了pygame.mixer.init()。