music piece with matlab

10 views (last 30 days)
Giovanni Scamardo
Giovanni Scamardo on 4 Apr 2022
Answered: Star Strider on 4 Apr 2022
do you know how to create a discrete time signal with musical notes having a sampling rate of 8000 samples per second?

Answers (2)

Geoff Hayes
Geoff Hayes on 4 Apr 2022
fs = 8000;
t1 = 0:1/fs:0.3;
t2 = 0:1/fs:0.6;
t3 = 0:1/fs:0.9;
C2 = 65.4064;
D2 = 73.4162;
F2 = 87.3071;
ft = [t1*C2 t2*D2 t3*F2];
Y = sin(2*pi*ft);
player = audioplayer(Y,fs);
playblocking(player);

Star Strider
Star Strider on 4 Apr 2022
Another approach —
A4 = 440;
A5 = 880;
Notes = A4*2^(1/12).^linspace(0, 11, 12); % Note Frequencies
Fs = 8000; % Sampling Frequency
t = linspace(0, Fs-1, Fs)/Fs; % Time Vector
NotesMatrix = sin(2*pi*t(:)*Notes); % Matrix Of One-Second Notes
for k = 1:size(NotesMatrix,2)
soundsc( NotesMatrix(:,k), Fs)
pause(1.1)
end
.

Categories

Find more on Just for fun in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!