(New page: == Homework 1 Solution == <ol> <li> <ol type="a"> <li> Below is a Matlab code that plays the melody of the song "Smoke on the Water" by Deep Purple at <b>original tempo</b>:<br><br> % Def...) |
|||
Line 29: | Line 29: | ||
</li> | </li> | ||
<li> | <li> | ||
− | Below is a Matlab code that plays the melody | + | Below is a Matlab code that plays the melody at <b>twice original tempo</b>:<br><br> |
% Defining sampling period and duration of a quarter note<br> | % Defining sampling period and duration of a quarter note<br> | ||
% The tempo of the song is increased by a factor of 2 by modifying the variable BMP accordingly<br> | % The tempo of the song is increased by a factor of 2 by modifying the variable BMP accordingly<br> | ||
Line 56: | Line 56: | ||
<li> | <li> | ||
− | Below is a Matlab code that plays the melody | + | Below is a Matlab code that plays the melody after applying the transformation <b><math>y(t)=x(2t)</math></b>:<br><br> |
% Defining sampling period and duration of a quarter note<br> | % Defining sampling period and duration of a quarter note<br> | ||
T=0.00001;<br> | T=0.00001;<br> | ||
Line 80: | Line 80: | ||
sound(tune,1/T)<br> | sound(tune,1/T)<br> | ||
wavwrite(tune,1/T,8,'1_c.wav')<br><br> | wavwrite(tune,1/T,8,'1_c.wav')<br><br> | ||
+ | </li> | ||
+ | </ol> | ||
+ | <li> | ||
+ | <ol type="a"> | ||
+ | <li> | ||
+ | The forward phrase is "number nine". | ||
+ | </li> | ||
+ | <li> | ||
+ | Below is a Matlab code that plays the extract <b>backwards</b>:<br><br> | ||
+ | [song Fs nbits] = wavread('Beatles.wav');<br> | ||
+ | song = flipud(song);<br> | ||
+ | wavwrite(song, Fs, nbits,'2_b.wav')<br><br> | ||
+ | Yes, there is a subliminal message in this extract. The message is "Turn me on, dead man". |
Revision as of 17:10, 22 January 2011
Homework 1 Solution
-
-
Below is a Matlab code that plays the melody of the song "Smoke on the Water" by Deep Purple at original tempo:
% Defining sampling period and duration of a quarter note
T=0.00001;
BPM=112;
dur=1/(BPM/60);
% Defining note durations
haft=0:T:dur*2;
dotted_quart=0:T:dur*1.5;
quart=0:T:dur;
eighth=0:T:dur/2;
% Defining notes of the melody
g=sin(2*pi*392*quart);
b_flat=sin(2*pi*466.16*quart);
c_dq=sin(2*pi*523.25*dotted_quart);
c_h=sin(2*pi*523.25*haft);
d_flat=sin(2*pi*554.37*eighth);
% Creating, playing, and saving melody into a wave file
tune=[g b_flat c_dq g b_flat d_flat c_h g b_flat c_dq b_flat g];
sound(tune,1/T)
wavwrite(tune,1/T,8,'1_a.wav')
-
Below is a Matlab code that plays the melody at twice original tempo:
% Defining sampling period and duration of a quarter note
% The tempo of the song is increased by a factor of 2 by modifying the variable BMP accordingly
T=0.00001;
BPM=2*112;
dur=1/(BPM/60);
% Defining note durations
haft=0:T:dur*2;
dotted_quart=0:T:dur*1.5;
quart=0:T:dur;
eighth=0:T:dur/2;
% Defining notes of the melody
g=sin(2*pi*392*quart);
b_flat=sin(2*pi*466.16*quart);
c_dq=sin(2*pi*523.25*dotted_quart);
c_h=sin(2*pi*523.25*haft);
d_flat=sin(2*pi*554.37*eighth);
% Creating, playing, and saving melody into a wave file
tune=[g b_flat c_dq g b_flat d_flat c_h g b_flat c_dq b_flat g];
sound(tune,1/T)
wavwrite(tune,1/T,8,'1_b.wav')
-
Below is a Matlab code that plays the melody after applying the transformation $ y(t)=x(2t) $:
% Defining sampling period and duration of a quarter note
T=0.00001;
BPM=112;
dur=1/(BPM/60);
% Defining note durations
haft=0:T:dur*2;
dotted_quart=0:T:dur*1.5;
quart=0:T:dur;
eighth=0:T:dur/2;
% Defining notes of the melody
% y(t)=x(2t) transformation is applied by multiplying the value inside the sine waves by a factor of 2
g=sin(2*pi*2**392*quart);
b_flat=sin(2*pi*2*466.16*quart);
c_dq=sin(2*pi*2*523.25*dotted_quart);
c_h=sin(2*pi*2*523.25*haft);
d_flat=sin(2*pi*2*554.37*eighth);
% Creating, playing, and saving melody into a wave file
tune=[g b_flat c_dq g b_flat d_flat c_h g b_flat c_dq b_flat g];
sound(tune,1/T)
wavwrite(tune,1/T,8,'1_c.wav')
-
Below is a Matlab code that plays the melody of the song "Smoke on the Water" by Deep Purple at original tempo:
-
- The forward phrase is "number nine".
-
Below is a Matlab code that plays the extract backwards:
[song Fs nbits] = wavread('Beatles.wav');
song = flipud(song);
wavwrite(song, Fs, nbits,'2_b.wav')
Yes, there is a subliminal message in this extract. The message is "Turn me on, dead man".