python读取wav文件进行傅里叶变换
时间: 2023-08-23 19:57:33 浏览: 274
Python 读取WAV音频文件 画频谱的实例
要在Python中对WAV文件进行傅里叶变换,你可以使用`numpy`和`scipy`库来进行处理。下面是一个示例代码:
```python
import wave
import numpy as np
import matplotlib.pyplot as plt
from scipy.fft import fft
# 打开WAV文件
with wave.open('audio.wav', 'rb') as wav_file:
# 读取所有音频数据
audio_data = wav_file.readframes(-1)
audio_data = np.frombuffer(audio_data, dtype=np.int16)
# 计算音频数据的傅里叶变换
fft_data = fft(audio_data)
# 计算频率轴
sample_rate = wav_file.getframerate()
freq_axis = np.linspace(0, sample_rate, len(fft_data))
# 绘制频谱图
plt.plot(freq_axis[:len(fft_data) // 2], np.abs(fft_data[:len(fft_data) // 2]))
plt.xlabel('Frequency (Hz)')
***
阅读全文