用python写一段代码实现WAV数据的读取与显示
时间: 2024-02-20 20:02:14 浏览: 74
好的,下面是使用Python实现WAV数据的读取与显示的示例代码:
```python
import wave
import numpy as np
import matplotlib.pyplot as plt
# 打开WAV文件
with wave.open('test.wav', 'rb') as wf:
# 获取WAV文件的参数
channels = wf.getnchannels() # 声道数
sample_width = wf.getsampwidth() # 采样位宽
framerate = wf.getframerate() # 采样频率
frames = wf.readframes(wf.getnframes()) # 读取音频数据
# 将音频数据转换为一维数组或二维数组
if channels == 1:
# 单声道音频数据转换为一维数组
data = np.frombuffer(frames, dtype=np.int16)
else:
# 双声道音频数据转换为二维数组
data = np.frombuffer(frames, dtype=np.int16).reshape(-1, channels)
# 显示音频波形图
plt.plot(data)
plt.show()
```
在该代码中,我们首先使用wave模块打开WAV文件,读取音频数据,并获取WAV文件的参数。然后根据声道数,将音频数据转换为一维数组或二维数组。最后使用matplotlib模块显示音频波形图。你可以将代码中的'test.wav'替换为你自己的WAV文件路径,运行代码即可实现WAV数据的读取与显示。
阅读全文