怎么让matlab发出数字音,比如“1”

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/13 04:11:43

怎么让matlab发出数字音,比如“1”
怎么让matlab发出数字音,比如“1”

怎么让matlab发出数字音,比如“1”
function soundaa
T=1/8000;
DO=261.63;RE=293.66;MI=329.63;FA=349.23;SO=392;LA=440;
SI=493.88;DOO=523.25;REE=587.33;MII=659.25;FAA=698.46;SOO=739.99;SREE=622.25;
YM=input('请输入8个音符(字符) a[k]=');
YC=input('请输入8个节拍(数字) b[k]=');
k=length(YM);
S=zeros(k,1)';
S(1)=0;
for n=2:k
S(n)=0;
for i=1:n-1
S(n)=S(n)+YC(i);
end
end
Y=zeros(8/T,1)';
for n=1:k;
t=[0:T:YC(n)/2-T];
a=sin(2*pi*YM(n)*t);
Y(1,S(n)/2/T+1:(S(n)/2/T+YC(n)/2/T))=Y(1,S(n)/2/T+1:(S(n)/2/T+YC(n)/2/T))+a;
end
sound(Y);
-----------------------------------------------
请输入8个音符(字符) a[k]=[SO DO SO DO SO DO RE MI]
请输入8个节拍(数字) b[k]=[1/4 1/4 1/4 1/4 1/4 1/8 1/4 1/8]