【已解决】MATLAB未定义函数或变量 ‘wavread‘,以及audioread,audiowrite,wavwrite

报错

MATLAB未定义函数或变量 ‘wavread‘。

原因

wavread在当前Matlab版本中废弃,需要改成audioread,同理wavwrite也需要改为audiowrite。

注意

在更改的时候,需要注意这几个函数入参的区别,可以通过在控制台去查询API。

help audioread

wavread

[clean, srate, nbits]= audioread(cleanfile); 

audioread

audioread目前只返回两个参数,nbits需要通过audioinfo去获取。

[clean, srate]= audioread(cleanfile); 
% 这里通过audioinfo 去获取nbits,BitsPerSample - 每样本输出位数
ainfo = audioinfo(cleanfile);
nbits = ainfo.BitsPerSample;

wavwrite

audiowrite(noisy, srate, nbits, outfile);

audiowrite

除了filename,y,fs之外,后面通过一个或多个 Name,Value 对组参数指定的其他选项。

audiowrite(outfile, noisy, srate, "BitsPerSample",nbits)

猜你喜欢

转载自blog.csdn.net/Sky_QiaoBa_Sum/article/details/130170391