• 电子产品世界网
  • 关于我们|
  • 网站合作|
  • 联系我们
  • 主页 > 数码 > 正文

    今日快看!python实现mp3文件播放的具体实现代码

    2023-05-04 06:03:47  |  来源:脚本之家  |


    (资料图)

    本文使用pygame实现播放mp3,文中用到pygame及mutagen库,安装:

    pip install pygamepip install mutagen

    以下代码实现mp3播放类,包含功能如下:

    设置mp3文件mp3长度暂停播放继续播放停止播放调整播放进度获取播放进度

    一切尽在不言中,以下为具体实现代码

    import pygame
    import os
    class MP3Player(object):
        def __init__(self, file):
            self.file = file
            from mutagen.mp3 import MP3
            self.length = MP3(self.file).info.length
            self.begin = 0.0
            self.play_mp3(self.file)
        def get_pos(self):
            """
            获取当前播放进度
            :return:
            """
            game_pos = pygame.mixer.music.get_pos()
            if game_pos == -1:
                return -1
            return self.begin + game_pos / 1000
        def set_pos(self, value):
            """
            设置播放进度
            :param value: 秒
            :return:
            """
            if value >= self.length:
                dst = self.length
            else:
                dst = value
            self.play_mp3(self.file, dst)
        def play_mp3(self, mp3_file, pos=0.0):
            """
            播放mp3
            :param mp3_file:
            :param pos:
            :return:
            """
            if os.path.exists(mp3_file):
                pygame.mixer.init()
                pygame.mixer.music.load(mp3_file)
                pygame.mixer.music.play(start=pos)
                self.begin = pos
        @staticmethod
        def pause_mp3():
            """
            暂停播放
            :return:
            """
            pygame.mixer.music.pause()
        @staticmethod
        def unpause_mp3():
            """
            继续播放
            :return:
            """
            pygame.mixer.music.unpause()
        @staticmethod
        def stop_mp3():
            """
            停止播放  并 释放MP3文件
            :return:
            """
            pygame.mixer.music.stop()
            pygame.mixer.music.unload()

    直接实例化,使用demo如下:

    import time
    mp3 = MP3Player("光辉岁月.mp3")
    print(mp3.length)   # 打印mp3时长
    mp3.set_pop(88)   # 设置进度至88秒处
    time.sleep(10)
    mp3.pause_mp3    # 暂停播放
    time.sleep(10)
    mp3.unpause_mp3()    # 恢复播放
    time.sleep(10)
    mp3.stop()    # 停止播放

    总结

    到此这篇关于python实现mp3文件播放的文章就介绍到这了,更多相关python实现mp3文件播放内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

    关键词:

    上一篇:美国四家银行倒闭令大批证券分文不值 股债投资者损失逾540亿美元   下一篇:最后一页