【问题标题】:Play sounds in a loop from a list从列表中循环播放声音
【发布时间】:2019-05-15 05:34:57
【问题描述】:

我得到了这个带有 2 种声音的列表,我想用这段代码来播放它们。 不幸的是,它只播放列表的最后一个声音。我知道使用 pygame.Sound 是一种解决方案,但我不知道如何使用它。

array = ["a.mp3", "b.mp3"] 
for i in range(len(array)):
    pygame.mixer.music.load(array[i])
    pygame.mixer.music.play()

【问题讨论】:

  • 你的循环看起来很像java。我不熟悉 pygame 但为什么不使用 for sound in array: 然后 .load(sound) 只是一个建议。虽然希望您得到帮助,但这并不能回答您的问题!
  • 这可以使用pygame吗?因为 winsound 和小吃也可以轻松做到这一点
  • 我想是的,因为我以后想在树莓派上使用它,我认为 WinSound 和 Snack 不支持树莓派

标签: python audio pygame


【解决方案1】:

在创建display 后,我能够pygame 播放音乐,即:

import pygame
pygame.init()
pygame.display.set_mode(pygame.display.list_modes()[-1]) # smallest resolution available
pygame.mixer.init()
pygame.mixer.music.load('1.mp3')
pygame.mixer.music.play()
pygame.mixer.music.queue('2.mp3')

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

注意事项:

【讨论】:

  • 哇,这就是解决方案,我刚刚在我的代码中添加了 while 条件,它就可以工作了!
  • 太好了。GL
猜你喜欢
  • 2021-05-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-11-25
  • 2022-12-31
相关资源
最近更新 更多