Fs = 44100; %Sampling Frequency
T = 1/Fs; %Sampling Period
global tt;
%% 最好頻率 44100 tempo = 80
%% Define Tempo 單位為16分音符
tempo = tt;
S = 0.25*(60/tempo);
time = [0:T:S];
[x k] = size(time);
t = @(L) linspace(0,L*S,L*k);
%% Define Notes
fA = 440.00; % Master Tuned to A 440
fGS = fA*2^(-1/12);
fG = fGS*2^(-1/12);
fFS = fG*2^(-1/12);
fF = fFS*2^(-1/12);
fE = fF*2^(-1/12);
fDS = fE*2^(-1/12);
fD = fDS*2^(-1/12);
fCS = fD*2^(-1/12);
fC = fCS*2^(-1/12);
fAS = fA*2^(1/12);
fB = fAS*2^(1/12);
A = @(m,L) sin(2*pi*fA*t(L)*2^m);
GS = @(m,L) sin(2*pi*fGS*t(L)*2^m);
G = @(m,L) sin(2*pi*fG*t(L)*2^m);
FS = @(m,L) sin(2*pi*fFS*t(L)*2^m);
F = @(m,L) sin(2*pi*fF*t(L)*2^m);
E = @(m,L) sin(2*pi*fE*t(L)*2^m);
DS = @(m,L) sin(2*pi*fDS*t(L)*2^m);
D = @(m,L) sin(2*pi*fD*t(L)*2^m);
CS = @(m,L) sin(2*pi*fCS*t(L)*2^m);
C = @(m,L) sin(2*pi*fC*t(L)*2^m);
B = @(m,L) sin(2*pi*fB*t(L)*2^m);
AS = @(m,L) sin(2*pi*fAS*t(L)*2^m);
%% 休止符
er = 0*A(0,1/2);% 1/32
qr = 0*A(0,1); % 1/16
hr = 0*A(0,2); % 1/8
wr = 0*A(0,4); % 1/4
%% 音樂
r1=[E(1,8)+CS(0,8)+A(0,8) CS(1,4)+F(1,4) A(1,2) B(1,2) D(1,8)+FS(1,8)+CS(2,8) F(1,4)+B(1,4) A(1,4)];
r2=[E(1,8)+CS(0,8)+A(0,8) F(1,4) A(1,2) B(1,2) D(1,4)+FS(1,4)+CS(2,4) A(1,4) F(1,4)+B(0,4)+D(1,4)+B(1,4) E(2,4)];
r3=[hr E(0,1) E(0,1) A(0,1) B(0,2) CS(1,3) CS(1,2) A(0,1) E(0,1) E(0,2)];
r4=[hr qr FS(0,1) E(1,1) D(1,1) CS(1,1) D(1,3)+A(0,3) D(1,2) CS(1,2) A(0,2)];
r5=[hr E(0,1) E(0,1) A(0,1) B(0,2) CS(1,2) CS(1,1) CS(1,2) A(0,1) E(0,1) E(0,2)];
r6=[hr qr E(0,1) E(1,1) D(1,1) CS(1,1) D(1,3)+F(0,3) D(1,2) CS(1,2) A(0,2)];
r7=[B(0,4) E(1,2) CS(1,8)+FS(0,8)+A(0,8) B(0,1) CS(1,1)];
r8=[D(1,2) CS(1,1) B(0,4) B(0,1) B(0,2)+G(0,2) C(1,1) B(0,2) A(0,3)];
r9=[hr B(0,2) E(1,2) CS(1,6)+FS(0,6)+A(0,6) B(0,1) CS(1,1)];
r10=[D(1,2) CS(1,1) B(0,4) B(0,1) C(1,3)+F(0,3) B(0,2) A(0,3)];
r11=[hr E(0,1) E(0,1) A(0,1) B(0,2) CS(1,3)+F(0,3)+A(0,3) CS(1,2) A(0,1) E(0,1) E(0,2)];
r12=r6;
r13=[hr E(0,1) E(0,1) A(0,1) B(0,2) CS(1,3)+F(0,3) CS(1,2) A(0,1) E(0,1) E(0,2)];
r14=r6;
r15=[B(0,4)+E(0,4) E(1,2) CS(1,8)+FS(0,8)+A(0,8) B(0,1) CS(1,1)];
r16=[D(1,2) CS(1,1) B(0,4) B(0,1) B(0,2)+G(0,2)+F(0,2) C(1,1) B(0,2) A(0,3)];
r17=[hr B(0,2)+E(0,2)+GS(0,2)+B(-1,2) E(1,2) CS(1,6)+FS(0,6)+A(0,6) B(0,1) CS(1,1)];
r18=[D(1,2)+FS(0,2) CS(1,1) B(0,4) B(0,1) B(0,2)+F(0,2)+ D(0,2) C(1,1) B(0,2)+F(0,2)+ D(0,2) A(0,3)];
r19=[hr E(1,1) E(1,1) D(1,1) CS(1,2) CS(1,3)+E(0,3)+GS(0,3) CS(1,2) A(0,1) E(0,1) E(0,2)];
r20=[hr E(1,1)+B(0,1)+G(0,1) E(1,1)+B(0,1)+G(0,1) D(1,1) CS(1,2) CS(1,2)+FS(0,2)+AS(0,2) CS(1,2) AS(0,1) AS(0,1) B(0,1) CS(1,1) B(0,1)];
r21=[qr D(1,1) D(1,1) D(1,1) E(1,1) D(1,1) CS(1,1) D(1,1) qr D(1,1) D(1,1) D(1,1) E(1,1) D(1,1) CS(1,1) D(1,1)];
r22=[qr B(0,1) B(0,1) B(0,1) B(0,1) B(0,1) CS(1,1) D(1,1) FS(1,1)+E(0,1)+B(0,1) E(1,1) E(1,1) CS(1,1) E(1,1) B(0,1) FS(1,1) E(1,1)];
r23=r19;
r24=[hr E(1,1)+B(0,1)+G(0,1) E(1,1)+B(0,1)+G(0,1) D(1,1) CS(1,2) CS(1,2)+FS(0,2)+AS(0,2) AS(0,2) AS(0,1) AS(0,1) B(0,1) CS(1,1) B(0,1)];
r25=[qr D(1,1) D(1,1) D(1,1) E(1,1) D(1,1) CS(1,1) D(1,1) qr D(1,1) D(1,1) D(1,1) E(1,1) D(1,1) CS(1,1) D(1,1)];
r26=r22;
r27=[wr G(0,2) B(0,2) E(1,2)+B(1,2) G(1,2) E(1,2) B(0,2)];
r28=[CS(1,4) A(0,1) E(1,1) CS(1,1) A(0,1) E(0,2) A(-1,2) CS(0,4) B(-1,8)+E(0,8) B(0,8)+E(0,8)];
%%part 2
r29=[E(-1,2)+A(-1,2)+CS(0,2) E(0,1) E(0,1) A(0,1) B(0,2) CS(1,3)+F(0,3)+A(0,3) CS(1,2) A(0,1) E(0,1) E(0,2)];
r30=[hr qr FS(0,1) E(1,1) D(1,1) CS(1,1) D(1,3)+F(0,3) D(1,2) CS(1,1) B(0,1) E(0,2)];
r31=[hr A(0,1) E(0,1) A(0,1) B(0,2) CS(1,3)+F(0,3)+A(0,3) CS(1,2) A(0,1) E(0,1) E(0,2)];
r32=[hr qr E(0,1) E(1,1) D(1,1) CS(1,1) D(1,3)+F(0,3)+A(0,3) D(1,2) CS(1,2) A(0,2)];
r33=r15;
r34=[D(1,2)+FS(0,2) CS(1,1) B(0,3) A(0,1) B(0,1) C(0,2)+F(0,2)+ G(0,2) F(0,1)+ B(0,1) F(0,2)+ B(0,2) A(0,3)];
l1=[A(-1,2) E(0,2) A(0,2) E(0,2) A(0,8) D(0,2) A(0,2) D(1,2) A(0,2) wr wr];
l2=[A(-1,2) E(0,2) CS(0,2) A(0,2) CS(0,8) D(0,2) A(0,4) A(0,2) D(0,8)];
l3=[A(-1,6) E(0,2) F(0,8)+A(-1,8)];
l4=[D(-1,2) A(-1,6) D(-1,4) D(0,4)];
l5=l3;
l6=[D(-1,2) A(-1,6) D(-1,4) A(-1,4)];
l7=[CS(-1,6) FS(-1,8) hr];
l8=[B(-1,2) FS(0,3) D(0,2) D(0,1) F(0,1) C(0,3) C(0,4)];
l9=[CS(-1,1) GS(-1,5) FS(-1,6) hr];
l10=[B(-1,2) FS(0,2) D(0,2) C(0,6) C(0,4)];
l11=[A(-2,2) E(-1,2) A(-1,2) E(-1,2) A(-2,4) F(-1,4)];
l12=[D(-1,2) A(-1,6) D(-1,8)];
l13=[A(-2,2) D(-1,2) A(-1,4) A(-2,2) F(-1,6)];
l14=[D(-1,2) A(-1,2) D(0,3) qr D(-1,4) A(-1,4)];
l15=[E(0,4) hr FS(-1,6) CS(0,4)];
l16=[B(-2,2) FS(-1,2) A(-1,4) D(0,1)+C(0,1) C(0,3) C(0,4)];
l17=l9;
l18=[B(-2,2) FS(-1,2) A(-1,3) C(0,1) F(-2,1) C(-2,1) A(-1,2) F(-1,2) E(0,1) E(-1,1)];
l19=[A(-2,1) E(-1,5) E(-1,1) A(-2,9)];
l20=[G(-2,4) G(-1,2) CS(-2,2) FS(-2,2) FS(-1,2) CS(0,2) FS(-1,2)];
l21=[B(-2,2) FS(-1,2) B(-1,4) B(-2,2) FS(-1,2) AS(-1,4)];
l22=[B(-2,2) FS(-1,2) A(-1,3) B(-1,1) E(-1,4) E(0,4)];
l23=[A(-2,1) E(-1,1) hr A(-1,2) E(-1,1) qr A(-2,1) A(-1,7)];
l24=[G(-2,4) G(-1,2) CS(-2,2) FS(-2,2) FS(-1,2) CS(0,4)];
l25=[B(-2,2) FS(-1,2) B(-1,3) FS(-1,1) B(-2,4)+FS(-1,4)+AS(-1,4) AS(-1,4)];
l26=l22;
l27=[G(-1,2) E(0,2) wr wr wr];
l28=[A(-2,1) E(-1,1) B(-1,1) E(0,1) wr wr wr G(-2,2) E(-1,2) G(-1,2) A(-1,4) A(-1,2) E(0,4)];
%%part 2
l29=l11;
l30=[D(-2,2) A(-2,2) FS(-1,2) A(-1,2) D(-1,1) F(-1,3) B(-1,3) E(-1,1)];
l31=[A(-2,1) E(-1,3) A(-1,2) E(-1,2) A(-2,1) F(-1,7)];
l32=[D(-1,2) A(-1,2) FS(-1,4) D(-1,1) F(-1,3) B(-1,4)];
l33=[CS(-1,4) GS(-1,2) FS(-1,6) CS(-1,4)];
l34=[B(-2,1) FS(-1,1) qr D(0,2) FS(-1,3) F(-2,1) C(-1,2) D(0,1) F(-1,2) D(0,1) A(-1,1)];
Right=[r1 r2 r3 r4 r5 r6 r7 r8 r9 r10 r11 r12 r13 r14 r15 r16 r17 r18 r19 r20 r21 r22 r23 r24 r25 r26 r27 r28 r29 r30 r31 r32 r33 r34];
Left=[l1 l2 l3 l4 l5 l6 l7 l8 l9 l10 l11 l12 l13 l14 l15 l16 l17 l18 l19 l20 l21 l22 l23 l24 l25 l26 l27 l28 l29 l30 l31 l32 l33 l34];
A = [Right+Left];