python - 如何在 PyGame 中一次播放多首歌曲?

标签 python pygame

我现在已经开始工作了,但是随着时间的延迟,有没有更好的方法,因为我想要两个不同的脚本工作我想让它们按这个顺序播放,让我的图像按顺序出现,图像是一个很长的脚本,它们也有时间延迟。

#!/usr/bin/env python
import pygame
pygame.mixer.init()
pygame.mixer.pre_init(44100, -16, 2, 2048)
pygame.init()
print "hey I finaly got this working!"
sounda= pygame.mixer.Sound('D:/Users/John/Music/Music/FUN.OGG')
soundb= pygame.mixer.Sound('D:/Users/John/Music/Music/Still Alive.OGG')
soundc= pygame.mixer.Sound('D:/Users/John/Music/Music/turret.OGG')
soundd= pygame.mixer.Sound('D:/Users/John/Music/Music/portalend.OGG')
sounda.play()
pygame.time.delay(11000)
soundb.play()<P>
pygame.time.delay(180000)
soundc.play()
pygame.time.delay(90000)
soundd.play()

最佳答案

你检查过pygame.Mixer了吗?模块 ?默认情况下,您可以同时播放 8 首歌曲

如果您使用 pygame.mixer.music ,您一次只能播放一首歌曲。

如果您使用 pygame.mixer.sound , 您一次最多可以播放 8 首歌曲。

music module用于流式传输音乐(它不会一次加载所有音乐文件)。

sound module在这里是为了在游戏中播放不同的声音(声音已完全加载到内存中)。

因此,在您的示例中,如果您想同时播放 4 首歌曲:

import pygame
pygame.mixer.init()
pygame.mixer.pre_init(44100, -16, 2, 2048)
pygame.init()
print "hey I finaly got this working!"
sounds = []
sounds.append(pygame.mixer.Sound('D:/Users/John/Music/Music/FUN.OGG'))
sounds.append(pygame.mixer.Sound('D:/Users/John/Music/Music/Still Alive.OGG'))
sounds.append(pygame.mixer.Sound('D:/Users/John/Music/Music/turret.OGG'))
sounds.append(pygame.mixer.Sound('D:/Users/John/Music/Music/portalend.OGG'))
for sound in sounds:
    sound.play()

关于python - 如何在 PyGame 中一次播放多首歌曲?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6004887/

相关文章:

绘制函数图的 Python 函数

python - 如何在初始化时创建和存储类的实例?

python - 在 objc 中进行 AES 256 解密时丢失一些字符

python - SymPy 的符号集成速度慢

Python - 修改与覆盖对象引用

osx-lion - 通过 Mac 在 PyPy 中安装 Pygame

python - PyGame 窗口停止显示

python - 访问类(class)外的 Sprite /类(class)位置

python - 嵌套for循环棋盘着色不起作用Python

python - 如何使角色成为图像 pygame