实现wav文件的读取和显示,并显示出波形图
时间: 2024-02-22 11:58:36 浏览: 107
读取wave文件并画出波形图
5星 · 资源好评率100%
可以使用 Python 内置的 wave 模块来完成 wav 文件的读取和显示。以下是代码示例:
```python
import wave
import numpy as np
import matplotlib.pyplot as plt
# 读取 wav 文件
with wave.open('example.wav', 'rb') as f:
frames = f.readframes(-1)
rate = f.getframerate()
channels = f.getnchannels()
sample_width = f.getsampwidth()
# 将读取到的数据转换为 NumPy 数组并进行处理
samples = np.frombuffer(frames, dtype='int16')
samples = np.reshape(samples, (len(frames) // sample_width, channels))
# 绘制波形图
fig, ax = plt.subplots()
ax.plot(samples)
ax.set_xlabel('Time (s)')
ax.set_ylabel('Amplitude')
plt.show()
```
这样就可以使用 wave 模块完成 wav 文件的读取和显示波形图了。需要注意的是,wave 模块只能用来读取和写入 wav 文件,如果需要进行信号处理和频域分析等更复杂的操作,可以考虑使用 Scipy 库。
阅读全文