音频录入后以不同采样率输出

  • 自行录制一段语音,并存储为wav文件

  • 存储为wav文件时,分别以采样频率、2倍采样频率和1/2采样频率存为三个wav文件,

  • 并将plot函数结合subplot函数在一幅图上显示3个波形

  • 横轴和纵轴带有标注。横轴的单位为秒(s),纵轴显示的为归一化后的数值

1.matlab代码

clear all
clc
%初始化
fs=8000;
duration=2;
n=duration*fs;
t=(0:n-1)/fs;

%录音
music=audiorecorder(fs,16,2);
recordblocking(music,2);
MyRecording=getaudiodata(music);

%归一化处理
ymax=max(abs(MyRecording));
y=MyRecording/ymax;
%不同频率存储
audiowrite('01.wav',MyRecording,fs);
audiowrite('02.wav',MyRecording,fs/2);
audiowrite('03.wav',MyRecording,2*fs);
%各个读取,算时间
[y2,fs2]=audioread('02.wav');
[y3,fs3]=audioread('03.wav');
t2=(1:length(y2))/fs2;
t3=(1:length(y3))/fs3;
%绘图
figure
subplot(311);
axis([0 3 -1 1]);M,H
plot(t,MyRecording);
xlabel('时间/s');
ylabel('幅值');
title('初始采样率');

subplot(312);
axis([0 3 -1 1]);
plot(t2,y2);
xlabel('时间/s');
ylabel('幅值');
title('1/2采样率');

subplot(313);
axis([0 3 -1 1]);
plot(t3,y3);
xlabel('时间/s');
ylabel('幅值');
title('2倍采样率');

2.结果显示

音频录入后以不同采样率输出_第1张图片

你可能感兴趣的:(语音识别)