【问题标题】:Pygame Sound File Crashing IDLEPygame 声音文件崩溃空闲
【发布时间】:2013-07-04 15:31:21
【问题描述】:

我正在尝试使用 Pygame 的背景音乐播放器 (pygame.mixer.music.load('music.mp3'), pygame.mixer.music.play(-1, 45.0)) 播放背景音乐,但是当我运行模块时,运行窗口几乎立即停止响应。最后,我的程序确实有一个停止,并且我将 mp3 与 python 文件放在同一个文件夹中,并且 FPS 是有限的。我很确定代码是正确的。除了可能出错的简单计算机问题之外,我想不出其他任何事情。

【问题讨论】:

  • 您可以尝试使用 ogg 文件。 Be aware that MP3 support is limited... Consider using OGG instead. 那你就知道是不是文件问题和pygame的有限支持了。
  • 代码总是有帮助的 ;) 前段时间我用一个 mp3 文件完成了它,但我手头没有实现,否则我会给你一个例子。今天晚些时候可能会写。 mp3文件的路径是否正确?

标签: python audio background pygame


【解决方案1】:

在 Pygame 中使用 mp3 文件作为声音并不是很好。如果您想要背景音乐,请使用免费的音频转换器(也许是 Audacity?)并将该音乐文件转换为 OGG 文件。您需要考虑的另一件事是,您应该记住将该声音文件放在与 Python/Pygame 脚本相同的文件夹/目录中。此外,您不一定需要一个频道来播放音乐。

beep1 = "beep1.wav"
beep2 = "beep2.wav"
beep3 = "beep3.wav"
beep4 = "beep4.wav"
beep_list = [beep1, beep2, beep3, beep4]
beep = random.shuffle(beep_list)
pygame.mixer.music.load((beep_list[1]))
pygame.mixer.music.play()

这是我使用的代码,每次球撞到墙边时都会发出哔声。也许你可以这样编辑它:

bgm = "backgroundmusic.ogg"
pygame.mixer.music.load((bgm))
pygame.mixer.music.play()

注意:推荐使用 .Wav 文件来制作音效,因为 WAV 文件在超过几秒钟时会变得更大一些。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-26
    • 1970-01-01
    • 2014-01-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多