Skip to content
Snippets Groups Projects
Commit f6652727 authored by AGOUMI Saad's avatar AGOUMI Saad
Browse files

seance2

parent 6809f3ca
Branches master
No related tags found
Loading
q1 3.m 0 → 100644
t = 0:0.01:3;
amplitudes = 10.^([77.25 75.91 60.74 63.01 59.83 56.54 55.12 41.16]/20);
frequences = [220.46 442.12 663.62 885.62 1108.42 1331.54 1556.29 1782.8];
y = zeros(size(t)); % initialiser le signal
for k = 1:length(amplitudes)
y = y + amplitudes(k) * sin(2*pi*frequences(k)*t);
end
figure(1);
plot(t, y);
xlabel('temps (s)');
ylabel('Amplitude');
title('Piano1/superposition');
grid;
q1 4.m 0 → 100644
fs = 44100; % frquence d'chantillonnage
dur = 2; % dure du signal (en secondes)
t = 0:(1/fs):dur; % axe temporel
% Amplitudes et frquences
amplitudes = 10.^([77.25 75.91 60.74 63.01 59.83 56.54 55.12 41.16]/20);
frequences = [220.46 442.12 663.62 885.62 1108.42 1331.54 1556.29 1782.8];
% Gnration du signal
y = zeros(size(t));
for k = 1:length(amplitudes)
y = y + amplitudes(k) * sin(2*pi*frequences(k)*t);
end
% -- (Optionnel) enveloppe ADSR --
% Paramtres ADSR
attack = 0.1; decay = 0.05; sustain = 0.7; sustainTime = 1.4; release = 0.4;
attackS = round(attack*fs);
decayS = round(decay*fs);
sustainS = round(sustainTime*fs);
releaseS = round(release*fs);
% Cration de l'enveloppe
env = [linspace(0, 1, attackS), ...
linspace(1, sustain, decayS), ...
sustain*ones(1, sustainS), ...
linspace(sustain, 0, releaseS)];
env = [env, zeros(1, length(t) - length(env))]; % complter si besoin
% Appliquer l'enveloppe
yenv = y .* env;
plot(t,y,'b');
hold on
plot(t,yenv,'r');
% Lecture ou sauvegarde
% audiowrite('piano_synthetise.wav', y, fs); % pour sauvegarder
q2 1.m 0 → 100644
Fe = 44100
T = 1/440;
t = 0:1/Fe:1;
x_square = square(2*pi*t/T);
x_saw = sawtooth(2*pi*t/T);
disp(x_square)
plot(t, x_square);
plot(t, x_saw);
X_sq = fftshift(fft(x_square));
X_sw = fftshift(fft(x_saw));
% Filtrage passe-bas d'ordre 1
y_lp = filter([0.5, 0.5], 1, x_saw);
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment