我想编写一个python脚本来播放声音(使用Windows录制器录制)!
我读了pygame可以做的工作并安装了pygame!但我不知道如何编写一个从特定路径播放声音的代码!我必须播放位于C:\Users\Asdf\Documents\Audio.wav
我在这里尝试了一个脚本http://pythonprogramming.net/adding-sounds-music-pygame/
import pygame
crash_sound = pygame.mixer.Sound("crash.wav")
但后来我收到一条错误消息:
Traceback(最近一次调用最后一次):文件“”,第1行,in crash_sound = pygame.mixer.Sound(“crash.wav”)AttributeError:'module'对象没有属性'mixer'
那么如何编写脚本以使用pygame播放该Audio.wav文件?
我正在使用Python 3.4 64位版本!
答案 0 :(得分:4)
我已经有效地使用了pydub来达到这个目的。该模块可以安装为
pip install pydub
pydub确实需要安装FFMPEG。给出@ https://github.com/jiaaro/pydub
安装pydub和ffmpeg的详细信息一旦安装了上述依赖项,该库就可以以相当简单的方式在不同平台[windows,Linux,Mac]上提供对各种音频格式的全面操作。
这是一个例子
from pydub import AudioSegment
from pydub.playback import play
fname = "C:\\Users\\Asdf\\Documents\\Audio.wav"
mysong = AudioSegment.from_wav(fname)
play(mysong)
答案 1 :(得分:0)
;C:\python34
附加到Path
变量。
您首先要安装pygame。您可以通过多种方式执行此操作。 但要从源代码安装
python setup.py
或者,如果python与Windows安装中的.py文件相关联(这是默认设置),请打开解压缩的文件夹并双击setup.py
你需要运行
pygame.init()
在调用pygame模块之前!
希望能为您解决问题
实施例
import pygame
pygame.init()
s = pygame.mixer.Sound("C:\\Users\\Asdf\\Documents\\Audio.wav")
# Start playback
s.play()
# Stop playback
s.stop()
import winsound
fname = "C:\\Users\\Asdf\\Documents\\Audio.wav"
winsound.PlaySound(fname, winsound.SND_FILENAME)
答案 2 :(得分:0)
这是一个简单的解决方案,适用于除了单个Python文件之外没有依赖关系的所有平台。
首先使用pip安装playsound
:
pip install playsound
然后从模块中导入相同名称的函数并运行它。很简单,没有?
from playsound import playsound
# wav works on all platforms. mp3 works on OS X. Other filetype/OS combos may work but have not been tested.
playsound('/path/to/file/you/want/to/play.wav')
免责声明:我写了playsound
。它需要一个可选的第二个参数block = False
,这将使函数调用不会阻塞。它会默认阻止。