基于MATLAB的音频处理基础与实践
1. 音频输入输出与波形生成
在数字音频处理中,第一步通常是读取音频文件并进行回放。MATLAB 提供了一系列函数来完成这些操作。
1.1 读取、播放音频并显示信息
使用 audioread 函数可以从指定文件中读取音频,返回数据矩阵和采样率; sound 函数用于播放音频; audioinfo 函数可显示音频文件的相关信息,如采样率、总样本数、时长、每个样本的位数、通道数和压缩方法等; plot 函数可用于绘制音频波形。
以下是一个示例代码:
clear; clc;
f = 'Counting-16-44p1-mono-15secs.wav';
[x, fs] = audioread(f);
sound(x, fs);
audioinfo (f)
figure, plot(x);
xlabel('Samples'); ylabel('Amplitude'); axis tight;
1.2 绘制基于时间的波形并归一化样本值
默认情况下,波形是相对于样本数绘制的。若要相对于时间绘制波形,可将样本数除以采样率。音频样本的幅度可以通过减去样本的最小值并除以最大值与最小值之差,将其归一化到 [0, 1] 范围内。
示例代码如下:
clear clc;
f = 'Je
超级会员免费看
订阅专栏 解锁全文
341

被折叠的 条评论
为什么被折叠?



