python中的pyaudio模块对wave音频流的读写特别简单方便。
一.模块下载
https://pypi.python.org/pypi/PyAudio
二.自带文档
http://people.csail.mit.edu/hubert/pyaudio/docs/#
三.解析
通过wave模块从音频文件中读取数据,返回wave类。然后把读取的str数据通过pyaduio模块写到声卡里。
1. wave模块
wf =wave.open(filenanme, mode’)此处读取音频文件,返回instance对象类
对wave类操作如下:
wf.setnchannels(1) 设置音频文件的声道数,用在写音频流时
wf.setsampwidth(2) 设置音频文件每个采样值得保存位数,用在写音频流时
wf.setframerate(8000)设置采样率,用在写音频流时
wf.getnchannels() 获得音频文件的声道数,用在读音频流时
wf.getsampwidth() 获得音频文件每个采样值得保存位数,用在读音频流时
wf.getframerate()获得采样率,用在读音频流时
2. pyaudio模块
通过p = pyaudio.PyAudio()返回pyaudio类instance,通过此类可以操作声音输出输入
PyAudio类的open函数有许多参数:
rate - 取样频率
channels - 声道数