脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Python - 如何利用Python实现简易的音频播放器

如何利用Python实现简易的音频播放器

2022-10-20 11:20LeBron Le Python

这篇文章主要介绍了如何利用Python实现简易的音频播放器,需要用到的库有pygame和tkinter,实现音频播放的功能,供大家学习参考,希望对你有所帮助

1. 需要用到的Python库

  • pygame
  • tkinter

2. 简易UI设计

?
1
2
3
4
5
audio_player = Tk()
audio_player.title('Audio Player v1.0')
audio_player.geometry('100x100+570+200')
audio_player.maxsize(height=110, width=220)
audio_player.minsize(height=110, width=220)

3. 功能模块实现

3.1 选择音频文件进行播放

?
1
2
3
4
5
6
7
8
def selectFile():
    file = filedialog.askopenfile(mode='r', filetypes=[('AudioFile', '*.mp3')])
    global filePath
    filePath = str(file).split("'")[1]
    try:
        playAudio()
    except:
        pass

3.2 控制音频播放、暂停

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
def changeText(text):
    if text == 'play':
        return 'pause'
    if text == 'pause':
        return 'play'
 
 
def playStop():
    playBtn.config(text=changeText(playBtn.config('text')[4]))
    if playBtn.config('text')[4] == 'pause':
        mixer.music.unpause()
    else:
        if playBtn.config('text')[4] == 'play':
            mixer.music.pause()

3.3 控制音频音量大小

这里可以定义一个全局变量x,初始化为值0.5。

?
1
2
3
4
5
6
7
8
9
10
def audioINC(y):
    mixer.music.set_volume(y + 0.1)
    global x
    x += 0.1
 
 
def audioDEC(y):
    mixer.music.set_volume(y - 0.1)
    global x
    x -= 0.1

3.4 播放器初始化等细节

?
1
2
3
4
5
6
7
8
9
def playAudio():
    try:
        mixer.init()
        mixer.music.load(filePath)
        mixer.music.set_volume(x)
        playBtn.config(text='pause')
        mixer.music.play()
    except:
        pass

4. 运行

?
1
2
3
4
5
6
7
8
9
10
11
12
frame = Frame(app)
frame.place(x=35, y=20)
 
openBtn = Button(frame, text='OpenFile', command=selectFile, width=8).grid(row=0, column=1)
 
audioDec = Button(frame, text='-', command=lambda: audioDEC(x)).grid(row=1, column=0)
playBtn = Button(frame, text='...', command=playStop, width=8)
playBtn.grid(row=1, column=1)
audioInc = Button(frame, text='+', command=lambda: audioINC(x)).grid(row=1, column=2)
restartBtn = Button(frame, text='Restart', command=playAudio, width=8).grid(row=2, column=1)
 
app.mainloop()

5. 简易音频播放器展示图

如何利用Python实现简易的音频播放器

  • ①点击“OpenFile”按钮可以打开本地音频文件
  • ②“-”和“+”分别控制音量的减小和增大
  • ③点击"Restart"按钮可以重新播放当前选中的音频

6. 总结

本文仅仅是实现了一个简易的音频播放器,UI极其简陋,为了仅仅是实现音频播放的功能,仅供学习参考。

到此这篇关于如何利用Python实现简易的音频播放器的文章就介绍到这了,更多相关Python实现简易音频播放器内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/hutianle/article/details/123204633

延伸 · 阅读

精彩推荐
  • Pythonpython将txt文件读取为字典的示例

    python将txt文件读取为字典的示例

    今天小编就为大家分享一篇python将txt文件读取为字典的示例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...

    weixin_3901204714542021-05-06
  • PythonPython中的datetime包与time包和模块详情

    Python中的datetime包与time包和模块详情

    这篇文章主要介绍了Python中的datetime包与datetime包和模块详情,文章围绕主题展开详细内容,具有一的的参考价值,需要的小伙伴可以参考一下,希望对你有...

    Mar丶流年9512022-10-17
  • PythonPython使用lambda抛出异常实现方法解析

    Python使用lambda抛出异常实现方法解析

    这篇文章主要介绍了Python使用lambda抛出异常实现方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友...

    Tacey Wong4892020-08-21
  • PythonPython实现Linux中的du命令

    Python实现Linux中的du命令

    这篇文章主要介绍了Python实现Linux中简单du命令,需要的朋友可以参考下...

    Python教程网2942020-11-17
  • PythonPyCharm关闭碍眼的波浪线图文详解

    PyCharm关闭碍眼的波浪线图文详解

    这篇文章主要介绍了PyCharm关闭碍眼的波浪线的实现,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要...

    Python编程时光7702021-09-17
  • Python使用Python中的reduce()函数求积的实例

    使用Python中的reduce()函数求积的实例

    今天小编就为大家分享一篇使用Python中的reduce()函数求积的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...

    dou_being10822021-07-25
  • PythonPython Pandas 修改表格数据类型 DataFrame 列的顺序案例

    Python Pandas 修改表格数据类型 DataFrame 列的顺序案例

    这篇文章主要介绍了Python Pandas 修改表格数据类型 DataFrame 列的顺序案例,文章通过主题展开详细的相关内容,感兴趣的小伙伴可以参考一下...

    菜鸟实战11232022-08-23
  • Pythonpython神经网络编程之手写数字识别

    python神经网络编程之手写数字识别

    这篇文章主要介绍了python神经网络编程之手写数字识别,文中有非常详细的代码示例,对正在学习python神经网络编程的小伙伴们有很好地帮助,需要的朋友可以...

    神仙盼盼5782021-10-26