matlab实现wav文件读取,实时显示时域波形和频谱
时间: 2024-04-12 15:27:10 浏览: 159
wav.zip_matlab 音频读入_wav_wav 分析_时频分析
您可以使用MATLAB的`audioread`函数来读取WAV文件中的音频数据。然后,您可以使用`plot`函数来绘制时域波形,并使用`fft`函数计算音频数据的频谱。
以下是一个简单的示例代码:
```matlab
% 读取WAV文件
filename = 'audio.wav';
[data, fs] = audioread(filename);
% 计算音频数据的时域波形
t = (0:length(data)-1)/fs; % 时间轴
figure;
subplot(2,1,1);
plot(t, data);
xlabel('Time (s)');
ylabel('Amplitude');
title('Time-domain waveform');
% 计算音频数据的频谱
N = length(data); % 数据点数
f = (-N/2:N/2-1)*(fs/N); % 频率轴
spectrum = fftshift(abs(fft(data)));
subplot(2,1,2);
plot(f, spectrum);
xlabel('Frequency (Hz)');
ylabel('Magnitude');
title('Frequency spectrum');
```
请确保将`audio.wav`替换为您实际的WAV文件路径。运行该代码将显示音频数据的时域波形和频谱。
希望对您有帮助!
阅读全文