本示例展示如何使用Python处理WAV格式音频文件,并绘制其频谱图,适用于音频分析和信号处理入门学习。
Python 读取WAV文件需要导入wave模块、struct模块以及scipy和pylab库中的相关功能。
```python
import wave
import struct
from scipy import *
from pylab import *
# 读取wav文件,这里我使用了一个自己用Python写的音阶的wav文件
filename = 1.wav
wavefile = wave.open(filename, r) # 打开以进行写入操作
# 下面是用于获取WAV文件四种信息的函数。其中numframes表示一共读取了几个帧,在后续处理中会使用到。
nchannels = wavefile.getnchannels() # 获取声道数
sample_width = wavefile.getsampwidth() # 获取每个样本(量化值)所占字节数
framerate = wavefile.getframerate() # 获取采样频率
numframes = wavefile.getnframes() # 获取帧总数
```
注意,`wave.open(filename, r)`中的r参数表示以只读模式打开文件。