audiowrite(filename,y,Fs)
audiowrite(filename,y,Fs,Name,Value)
二,解释
注意:在新版本的matlab中不再使用wavwrite,推荐使用audiowrite
filename指想要保存文件的文件名,一般为想要取得名字,比如想生成音频文件叫“Test.wav”就写成“Test.wav”,注意引号和文件后缀名。
Fs为取样率,一般音频信号的取样率为8000Hz
y指要写入的音频数据,比如有一个序列data,就可以把y的位置写成data
Name,Value指名称-值对组参数(官网上的称呼),具体来说是给其定义具体细节的参数,看例子吧
例如:
'BitsPerSample',24指每个样本点用24为数(数据的长短决定了文件的质量和大小)
当然后面还有‘title’,‘artist’之类的,一般用不上。
三,实例
%------------------生成声音序列----------------------------
sound=[p1,z,p6,z,p0,z,p1,z,p0,z,p1,z,p9,z,p9,z,p0,z,p4,z,p4,z,];
sound=sound/max(abs(sound));%归一化声音序列
figure(1);
plot(sound);
%写出音频
audiowrite('my_phone_number_sound_test.wav',sound,8000);
四,参考
详情还请参考matlab官方文档