Petit clavier musical utilisant un calcul automatique de la fréquence des notes

Soyez le premier à donner votre avis sur cette source.

Vue 5 115 fois - Téléchargée 683 fois

Description

Le but de ce tout petit programme est simplement de jouer de la musique avec un clavier représentant les 12 demi-tons de la gamme. A la base, j'ai juste voulu tester la formule de calcul des fréquences trouvée dans Wikipédia. Cette formule est basée sur l'octave et sur l'indice du demi-ton dans la gamme, ce qui évite d'avoir à se taper toutes les fréquences en dur dans le source du programme. Connaissant une seule fréquence (le fameux "LA 440"), toutes les autres fréquences sont implicitement déduites. J'ai utilisé des Windows.Beep, c'est donc le buzzer interne du PC qui restitue le son. On est donc très loin d'un son de piano :-)

Amusez-vous bien quand-même !!

Source / Exemple :


frequence := trunc(440 * power(2, ((octave - 3) + ((note - 10) / 12))));

Conclusion :


Pour simplifier encore le code source zippé ci-joint, j'ai renseigné le TAG de chaque bouton avec l'indice du demi-ton concerné :

1 = DO
2 = DO#
3 = RE
4 = RE#
5 = MI
6 = FA
7 = FA#
8 = SOL
9 = SOL#
10 = LA
11 = LA#
12 = SI

Cela permet d'appeler la même fonction sur le OnClick...

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Bacterius
Messages postés
3793
Date d'inscription
samedi 22 décembre 2007
Statut
Membre
Dernière intervention
3 juin 2016
6 -
De plus, Windows.Beep ne fonctionne pas sous Vista, alors que ta précédente source marchait :(

Cordialement, Bacterius !
DRAGADELPHI
Messages postés
11
Date d'inscription
samedi 29 mai 2010
Statut
Membre
Dernière intervention
25 juin 2010
-
j'ai pas eu encor le temps de vérifier mais je trouve ton idées superbe, je suis musicien, actuellement je ne suis pas sur mon pc à la maison où delphi est installé, mais je V télécharger le zip et le tester, Bravo sokobane

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.