基于matlab的音频波形实时採集显示 v0.1

本文介绍了一种使用MATLAB进行实时音频录制并显示波形的方法。通过设置音频采样频率、位数及通道数,利用循环不断更新音频数据并即时绘制波形图,实现了连续平滑的音频波形显示。
robj = audiorecorder(44100,16,1);  %设置採样频率、採样位数、通道数
recordblocking(robj,1);            %採集初步数据(1s长度)
rdata = getaudiodata(robj);        %获取音频数据
plot(rdata);                       %绘制波形
axis([1,44100,-0.1,0.1]);          %设置固定坐标轴
drawnow                            %刷新显示
n = 100;                           %设定兴许的採样更新次数,n与m可联合计算兴许更新时间长度
m = 0.1;                           %设定更新间隔,m越小波形越连续
while n>1
    recordblocking(robj,m);
    rlen = length(rdata);          %获取数据长度
    olddata = rdata(floor(rlen*m):rlen,1);     %保留的旧数据
    rdata = [olddata ; getaudiodata(robj)];    %待显示的数据 = 旧数据 + 新数据
    plot(rdata);
    axis([1,44100,-0.1,0.1]);
    drawnow
    n = n-1;
end

转载于:https://www.cnblogs.com/jzssuanfa/p/7063686.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值