ヴィヴラートをつける

fs=44100;
w=0:fs;
t=w/44100;
t1=0.1;
n=[0,4,7,4,0,4,7,4,12,7,12];
b=[0,1,2,3,4,5,6,7,8,10,12]*0.1;
l=[1,1,1,1,1,1,1,1,1,1,4]*0.05;
x=zeros(1:(44100*4));
for i=1:length(n)
p=int(b(i)*fs)+1;
f=440*2^(n(i)/12);
a=0.001;
r=0.01;
v=min(exp((t-0.1)/a),0.1,exp((0.1-t+l(i))/r));
s=(sin(2*%pi*f*t+sin(2*%pi*10*t))) .* v;
x(p+w)=x(p+w)+s;
end
sound(x,fs);
          

 

sin関数の中にもう一つのsin関数をつけ、角度を低い周波数で振動させることで、ヴィヴラートの効果が得られる。