pygame中的暂停方法不会停止播放声音

时间:2018-09-05 17:06:44

标签: python audio pygame

我正在尝试使用python制作声音播放器,并且效果很好。但是,当我尝试在混音器上使用pause()函数时,它无法识别,应该暂停。另外,当我尝试从其他类运行pause方法时,它也不起作用。如果有人可以帮助我,我将非常感激。

import pygame
from pygame import *

sound_bassdrum = 'bassdrum.wav'

class soundsMixer:
    def __init__(self):
        mixer.pre_init(44100, 16, 2, 4096)
        mixer.init()

    def pauseMixer(self):
        mixer.pause()

    def playBassdrum(self):
        self.bassdrum = pygame.mixer.Sound(sound_bassdrum)
        self.bassdrum.play()

appMixer = soundsMixer()

1 个答案:

答案 0 :(得分:0)

我认为您无法正确暂停它,因为您正在混音器上运行.pause方法(尽管根据文档必须暂停所有通道)。但是您实际上并没有暂停在
创建的Sound对象  self.bassdrum = pygame.mixer.Sound(sound_bassdrum)

尝试做这样的事情,让我知道是否可行。 将此功能添加到您的班级

def pause_soundobject(self, soundobj):
    soundobj.stop()

现在使用此方法并将self.bassdrum作为soundobj传递。