Python-wave库的使用

1.导入

import wave

2.读取.wav文件

注意使用二进制模式读wav音频文件
返回wave_reader类的示例

f = wave.open('file_path.wav', 'rb')

3.调用方法读wav文件的格式和数据

# 一次性返回所有格式信息,元组:(声道数, 量化位数(byte单位), 采样频率, 采样点数, 压缩类型, 压缩类型)
params = f.getparams()
nchannels, sampwidth, framerate, nframes = params[:4]

channel = f.getnchannels()    # 通道数
sampwidth = f.getsampwidth()  # 比特宽度 每一帧的字节数
framerate = f.getframerate()  # 帧率  每秒有多少帧
frames = f.getnframes()       # 帧数
duration = frames/framerate   # 音频持续时间 单位:秒
audio = f.readframes(frames)  # 按帧读音频,返回二进制数据

4.写wav音频

# 数组数据
wave_data = ...
# 打开WAV文档
f = wave.open("file.wav","wb")
# 配置声道数、每帧的字节数和帧率
f.setnchannels(1)
f.setsampwidth(2)
f.setframerate(framerate)
# 将wav_data转换为二进制数据写入文件
f.writeframes(wave_data.tostring())
f.close()

参考网址

https://blog.ailemon.me/2017/08/29/python-read-wav-files/
http://bigsec.net/b52/scipydoc/wave_pyaudio.html

你可能感兴趣的:(python)