如何在 Python 脚本的后台播放音频(playsound)?

新手上路,请多包涵

我只是为了好玩而编写一个小型 Python 游戏,并且我有一个函数可以开始叙述。

我试图让音频在后台播放,但不幸的是,MP3 文件在功能继续之前先播放。

我如何让它在后台运行?

 import playsound

def displayIntro():
    playsound.playsound('storm.mp3',True)
    print('')
    print('')
    print_slow('The year is 1845, you have just arrived home...')

另外,有没有办法控制 playsound 模块的音量?

我使用的是 Mac,我并不拘泥于使用 playsound。它似乎是我唯一可以开始工作的模块。

原文由 Nicholas 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.6k
2 个回答

在 Windows 中:

使用 _winsound.SNDASYNC 异步播放它们:

 import winsound
winsound.PlaySound("filename", winsound.SND_ASYNC | winsound.SND_ALIAS )

停止播放

winsound.PlaySound(None, winsound.SND_ASYNC)

在 Mac 或其他平台上:

你可以试试这个 Pygame/SDL

 pygame.mixer.init()
pygame.mixer.music.load("file.mp3")
pygame.mixer.music.play()

原文由 void 发布,翻译遵循 CC BY-SA 4.0 许可协议

只需将 True 更改为 False (我使用 Python 3.7.1)

 import playsound
playsound.playsound('storm.mp3', False)
print ('...')

原文由 χρηστος απατσιδης 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题