Instructor's note: just put a space at the beginning of each line of code. That way your text won't be interpreted as wikitext code, and it will display correctly. -pm
%Derek Richards
%HW 1 ECE 301 %______ _ __ % %| ___ \ | | / | % %| |_/ /__ _ _ __| |_ `| | % %| __// _` | '__| __| | | % %| | | (_| | | | |_ _| |_% %\_| \__,_|_| \__| \___/%
b=(112/60); %b is the time of one standard beat half_b=0.5*(112/60); delta=0.000025; %arbitray variable small enough to sample well
w=@(tempo)0:delta:tempo; %whole note h=@(tempo)0:delta:0.5*tempo; %half note q=@(tempo)0:delta:0.25*tempo; %quarter note dotq=@(tempo)0:delta:1.5*0.25*tempo; %dotted quarter note e=@(tempo)0:delta:0.125*tempo; %eigth note A4=440; %Frequency of note A4
%Note funtion takes 2 variables %ntype: type of note (w,h,q,dotq,e) %dev_A4: deviation from note A4 positive is up the scale, negative is down NOTE = @(ntype,dev_A4) sin(2*pi*2^(dev_A4/12)*A4*ntype);
%Smoke on the Water, by Deep Purple sound(NOTE(q(b),-2),1/delta); sound(NOTE(q(b),1),1/delta); sound(NOTE(dotq(b),4),1/delta); sound(NOTE(q(b),-2),1/delta); sound(NOTE(q(b),-2),1/delta); sound(NOTE(q(b),1),1/delta); sound(NOTE(e(b),5),1/delta);
sound(NOTE(h(b),4),1/delta); sound(NOTE(q(b),-2),1/delta); sound(NOTE(q(b),1),1/delta); sound(NOTE(dotq(b),4),1/delta); sound(NOTE(e(b),1),1/delta); sound(NOTE(e(b),1),1/delta); sound(NOTE(h(b),-2),1/delta); %Silence to create a pause before 2x speed sound(NOTE(q(8),68),1/delta); %Smoke on the Water, by deep Purple, twice tempo sound(NOTE(q(half_b),-2),1/delta); sound(NOTE(q(half_b),1),1/delta); sound(NOTE(dotq(half_b),4),1/delta); sound(NOTE(q(half_b),-2),1/delta); sound(NOTE(q(half_b),-2),1/delta); sound(NOTE(q(half_b),1),1/delta); sound(NOTE(e(half_b),5),1/delta); sound(NOTE(h(half_b),4),1/delta); sound(NOTE(q(half_b),-2),1/delta); sound(NOTE(q(half_b),1),1/delta); sound(NOTE(dotq(half_b),4),1/delta); sound(NOTE(e(half_b),1),1/delta); sound(NOTE(e(half_b),1),1/delta); sound(NOTE(h(half_b),-2),1/delta); %Silence to create a pause before x(2*t) speed sound(NOTE(q(8),68),1/delta); %Smoke on the Water, by deep Purple, x(2*t) NOTE = @(ntype,dev_A4) sin(2*2*pi*2^(dev_A4/12)*A4*ntype); sound(NOTE(q(b),-2),1/delta); sound(NOTE(q(b),1),1/delta); sound(NOTE(dotq(b),4),1/delta); sound(NOTE(q(b),-2),1/delta); sound(NOTE(q(b),-2),1/delta); sound(NOTE(q(b),1),1/delta); sound(NOTE(e(b),5),1/delta); sound(NOTE(h(b),4),1/delta); sound(NOTE(q(b),-2),1/delta); sound(NOTE(q(b),1),1/delta); sound(NOTE(dotq(b),4),1/delta); sound(NOTE(e(b),1),1/delta); sound(NOTE(e(b),1),1/delta); sound(NOTE(h(b),-2),1/delta); %______ _ _____ % %| ___ \ | | / __ \% %| |_/ /__ _ _ __| |_ `' / /'% %| __// _` | '__| __| / / % %| | | (_| | | | |_ ./ /___% %\_| \__,_|_| \__| \_____/%
%lets assume the file Beatles.wav is in the current directory... [beatle_song, Fs] = wavread('Beatles.wav'); sound(beatle_song,Fs); beatle_song_rev = flipud(beatle_song); sound(beatle_song_rev,Fs); wavwrite(beatle_song_rev,Fs,'Ece301_HW1_part2'); %END CODE