用python播放声音文件,使用了库playsound。

说一下本机环境:win10 64位,python3.10.4 ,python2.7.13

最近一直用python3,所以首先进入python3的路径,运行pip3 install playsound 和pip3 install playsound2==1.3.0,结果都安装失败。

可能是因为python3.10的原因。 没有深究。于是使用python2安装。
因为python2加入了环境变量,所以直接cmd后使用pip install playsound ,安装成功(因为安装成功时忘了截图,下图是再次运行pip install playsound 的情况)。

开始写代码:
1、音频文件的路径如下图D:\LC\PycharmProjects\atx_xxqg\works\sources\musics\start.mp3

2、我将运行代码play_sound.py和音频start.mp3的根目录works放在同一个根目录下

代码如下:(python2.7的代码开头须加上这句# -*- coding: utf-8 -*-)
# -*- coding: utf-8 -*-
import os
import threading
from playsound import playsound
def play_voice(maudio):
root_path = os.getcwd()#获取play_sound.py的根目录
print(root_path)#D:\LC\PycharmProjects\atx_xxqg
music_path = os.path.join(root_path, "works","sources", "musics", "{}.mp3".format(maudio))#获取音频路径
print(music_path)#D:\LC\PycharmProjects\atx_xxqg\works\sources\musics\start.mp3
threading.Thread(target=playsound, args=(music_path,)).start()
play_voice('start')
代码中用了threading多线程,为的是不影响主线程的运行。
在运行中,出现过错误,参考文章解决了问题关于python使用playsound播放音频报错的原因分析_playsound 报错_Wsunsky的博客-CSDN博客
其中,修改库源代码的位置在C:\Python27\Lib\site-packages中,如下图

至于是不是python3.10版本的原因用不了playsound库,等有机会换一台电脑使用python3.8测试。