【问题标题】:How can I play song repeatedly using pygame.mixer.music.play()?如何使用 pygame.mixer.music.play() 重复播放歌曲?
【发布时间】:2021-01-23 18:29:30
【问题描述】:

我尝试使用 pygame 模块重复一首歌曲(mp3)。代码如下来自网站https://www.studytonight.com/tkinter/music-player-application-using-tkinter 调用这个函数的时候,只出来一次,当然很自然。

    def playsong(self):      
       # Displaying Selected Song title
       self.track.set(self.playlist.get(ACTIVE))
       # Displaying Status
       self.status.set("-Playing")
       # Loading Selected Song
       pygame.mixer.music.load(self.playlist.get(ACTIVE))
       # Playing Selected Song
       pygame.mixer.music.play()

为了重复这个声音文件,我添加了这样的循环,但它只播放一次。 我怎么能一遍又一遍地重复很多次?我应该多次调用函数 playsound(self) 吗?

   def playsong(self):
    for i in range(3):
        # Displaying Selected Song title
        self.track.set(self.playlist.get(ACTIVE))
        # Displaying Status
        self.status.set("-Playing")
        # Loading Selected Song
        pygame.mixer.music.load(self.playlist.get(ACTIVE))
        # Playing Selected Song
        pygame.mixer.music.play()

【问题讨论】:

    标签: python pygame


    【解决方案1】:

    pygame.mixer.music.play() 的第一个可选参数 (loops) 告诉函数重复音乐的频率。

    例如通过 1 播放音乐两次(重复一次):

    pygame.mixer.music.play(1)
    

    传递-1无限播放音乐:

    pygame.mixer.music.play(-1)
    

    pygame.mixer.music.play():

    play(loops=0, start=0.0, fade_ms = 0) -> None

    这将播放加载的音乐流。如果音乐已经在播放,它将重新启动。

    loops 是一个可选的整数参数,默认为0,它告诉重复音乐的次数。如果此参数设置为 -1,则音乐无限重复。

    【讨论】:

    • 非常感谢。它运作良好。感谢您继续前进。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-08-12
    • 1970-01-01
    • 2018-06-09
    • 1970-01-01
    • 1970-01-01
    • 2023-04-03
    • 1970-01-01
    相关资源
    最近更新 更多