Salut à toutes et a tous.

Je fais actuellement quelques essais pour modéliser des générateurs de signaux
périodiques, donc destinés à terme à la mise en oeuvre de synthétiseurs.

Pour ce qui est des signaux simples, il n'y a guère de difficultés mais par contre
j'ai quelques soucis avec la modulation en fréquence (ou de phase ou "vibrato").

Quel serait l'algo permettant d'appliquer ce vibrato en sachant que je récupère
la phase (en radians) pour ces deux signaux (signal et modulation) à un instant (t)
et plus précisément à l'instant (e) de l'échantillonnage ainsi que la profondeur
de la dite modulation :

double signal_a_moduler; (en radians)
double signal_de_modulation; (en radians)
double amplitude_modulation;


double resultat_de_la_modulation = ???

Pour plus de précisions, voici comment je calcule le radian d'un signal sinusoïdal,
à chaque échantillon :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
int Echantillon; //Compteur d'échantillons
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
double Frequence; // fréquence en Hz
double spp = 44100.0 / Frequence; //nombre de samples par periode
double radian = Echantillon / spp * Pi; //Pi = 2 * pi
J'ai donc assez facilement le sinus :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
double sinus = sin(radian); //math.h pour sin
A plus !