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

pip install pygame

pip install mutagen

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

设置mp3文件

mp3长度

暂停播放

继续播放

停止播放

调整播放进度

获取播放进度

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

import pygame
import osclass MP3Player(object):def __init__(self, file):self.file = filefrom mutagen.mp3 import MP3self.length = MP3(self.file).info.lengthself.begin = 0.0self.play_mp3(self.file)def get_pos(self):"""获取当前播放进度:return:"""game_pos = pygame.mixer.music.get_pos()if game_pos == -1:return -1return self.begin + game_pos / 1000def set_pos(self, value):"""设置播放进度:param value: 秒:return:"""if value >= self.length:dst = self.lengthelse:dst = valueself.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@staticmethoddef pause_mp3():"""暂停播放:return:"""pygame.mixer.music.pause()@staticmethoddef unpause_mp3():"""继续播放:return:"""pygame.mixer.music.unpause()@staticmethoddef stop_mp3():"""停止播放  并 释放MP3文件:return:"""pygame.mixer.music.stop()pygame.mixer.music.unload()

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

import timemp3 = 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文件播放相关推荐

  1. Android 播放raw文件夹下音频文件,本地MP3文件播放,播放云端MP3文件,获取MP3文件播放时长

    1.复制音频文件到raw文件夹下 2.实例化音频文件 private final MediaPlayer.OnCompletionListener beepListener = new MediaPl ...

  2. python下载mp3文件_Python 下载Mp3

    importrequests,os,time,sys,reimporturllib.requestimportrequestsfrom bs4 importBeautifulSoupimportosf ...

  3. JB的测试之旅-上传的mp3文件播放不了

    温馨提示:阅读时长约2分钟: 前言 公司是资讯类产品,因此后台采用了开源的编辑器供运营原创文章.上传图片.视频等,这不,运营上传完视频发布文章后,发现文章里面的音频播放不了: 而这,就是故事的开端: ...

  4. python操作mp3文件

    from datetime import datetime import requests import os mp3_url = '/voice/20191224/03a9fa429f3f74963 ...

  5. 开发游戏音频程序——MP3的播放

    最近学了一些游戏开发必不可少的MP3文件播放知识.首先,我的目标机器是windows,所以这些是在windows平台下开发的.随后我学到,要直接解码MP3文件是非常的困难的.因为MP3文件的闭源,我们 ...

  6. 增大/减少Mp3文件的默认音量—令其统一音量

    http://www.pt80.net/thread-567373-1-1.html 音乐通常都被保存成*.mp3,所以mp3就成了音乐的代名词.不过在播放mp3的时候,你可能会发现总有几首歌的音量和 ...

  7. 如何使用MP3剪切合并大师剪切MP3文件

    软件简介: MP3剪切合并大师是一款界面简洁,操作方便的MP3剪切工具.有了MP3剪切合并大师,您可以方便的将MP3和各种流行的视频或音频格式剪切成MP3片段和手机铃声., MP3剪切合并大师支持对M ...

  8. Ehome:智能家居之多媒体系统mp3音频播放

    7. MP3功能的实现 7.1 基本概念       PCM: 脉冲编码调制           声音是 模拟量           计算机能处理的是 数字量,涉及模拟量和数字量的相互转换       ...

  9. python程序执行提示音——python播放MP3文件

    python程序执行提示音设置 # !pip install playsound from playsound import playsoundif __name__ == "__main_ ...

最新文章

  1. POJ 3258:River Hopscotch (最大化最小值)
  2. 1.3 选择适合的Arduino
  3. JSON API免费接口
  4. Java最佳实践– Vector vs ArrayList vs HashSet
  5. java设置行显示复选框_java spring cheakbox复选框怎么行或者列删除添加
  6. HTML5中拖动功能的添加属性,html5中可拖动dragable属性及其他成员的讲解
  7. No resource found that matches the given name 'Theme.AppCompat.Light'.
  8. [置顶] Ubuntu 12.04中文输入法的安装
  9. 如何以用户身份登录MySQL_解析:如何以普通用户的身份运行 MySQL
  10. 关于 unable to load shared object 'C:\Program Files\R\R-3.0.3\library\stats\libs\i386\stats.dll'
  11. 拷贝一个用户下的所有表和数据到另外一个库
  12. SQLite数据库安装(windows)
  13. 2020 Linux系统应用基础教程 期末复习【整理】 第五章 磁盘文件与目录管理
  14. Android 长按Menu键的监听
  15. windows上安装macos系统(超详细,可直接使用)
  16. 正方形、长方形、立方体
  17. CS224W图机器学习笔记8-图神经网络三大应用
  18. 语音增强 理论与实践 pdf_初中英语语音教学策略研究 (结题报告)
  19. 【 Kotlin 脚本编程Kotlin Scripting 】Linux Shell 脚本与Kotlin Scripting
  20. javascript 时间倒计时

热门文章

  1. A*(A star)
  2. 机器学习流程知识结构图
  3. Cocoapods安装与SVN使用
  4. 老博客的日记集之工作之后
  5. 一篇文章让你理清 【硬盘类型】 HDD、SSD、SSHD 和 【硬盘接口类型】 ATA、IDE、SATA、SCSI、SAS
  6. Linux下C的标准I/O和文本I/O
  7. cmake -D CMAKE_PREFIX_PATH=/home/nvidia/data/wyy/openpose/build
  8. BigTable读后感
  9. Docker安装制作
  10. WIN7一开机就自动连接宽带 WIN7盘符混乱 WIN7查看隐藏文件 WIN7禁止提示更新 WIN7设置共享