【问题标题】:Play all songs in pygame [duplicate]播放pygame中的所有歌曲[重复]
【发布时间】:2020-04-14 07:18:40
【问题描述】:

我正在使用 Python 3.8.2 和 Windows。我有个问题。我正在开发一个音频播放器项目。我想创建一个播放所有歌曲的按钮。当我使用pygame.mixer.music.play() 时,它不会开始歌曲并等到它完成;它开始播放歌曲并移至下一行。 所以我不能把代码放在这样的循环中:

from pygame import *
list_of_songs = ['Guitar.mp3', 'song1.mp3', 'Piano.mp3']
for i in list_of_songs:
       init()
       mixer.init()
       mixer.music.load(i)
       mixer.music.play()

有专门的命令吗?

【问题讨论】:

  • mixer.music.queue()?

标签: python python-3.x pygame audio-player


【解决方案1】:

使用pygame.mixer.music.queue() 作为播放列表:

list_of_songs = ['Guitar.mp3', 'song1.mp3', 'Piano.mp3']

for i, song in enumerate(list_of_songs):
    if i == 0:
        pygame.mixer.music.load(song)
        pygame.mixer.music.play()
    else:
        pygame.mixer.music.queue(song) 

while pygame.mixer.music.get_busy():
    pygame.time.Clock().tick(10)

【讨论】:

  • 非常感谢大家。它现在正在工作。但是有人可以解释一下pygame.time.Clock().tick(10) 是什么吗?
  • @Tanmay 你可以认为是“延迟”。见pygame.time.Clock().tick()
猜你喜欢
  • 2017-02-05
  • 2022-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-02-28
  • 1970-01-01
相关资源
最近更新 更多