ftom — Convertit une fréquence en MIDI.
Opcode du greffon emugens.
Convertit une fréquence en numéro de note MIDI, en tenant compte de la valeur globale du la3 (A4).
imidi ftom ifreq [,irnd]
kmidi ftom kfreq [,irnd]
imidis[] ftom ifreqs[] [,irnd]
kmidis[] ftom kfreqs[] [,irnd]
kfreq / ifreq -- Fréquence.
irnd -- Facultatif, s'il est différent de zéro le résultat est arrondi à l'entier le plus proche (zéro par défaut).
kmidi / imidi -- Numéro de note MIDI correspondant.
Note | |
---|---|
Fixer la valeur globale du la3 (A4) dans l'en-tête pour modifier l'accordage. |
Voici un exemple de l'opcode ftom. Il utilise le fichier mtof-ftom.csd.
Exemple 396. Exemple de l'opcode ftom.
<CsoundSynthesizer> <CsOptions> </CsOptions> <CsInstruments> sr = 44100 ksmps = 128 nchnls = 2 0dbfs = 1.0 A4 = 440 instr 1 kfreq = mtof(69) printks2 "midi 69 -> %f\n", kfreq kmidi = ftom(442) printks2 "freq 442 -> %f\n", kmidi kmidi = ftom(442,1) printks2 "freq 442 -> %f rounded\n", kmidi kfreq = mtof(kmidi) printks "midi %f -> %f\n", 1, kmidi, kfreq imidi = ftom:i(440) print imidi ifreq = mtof:i(60) print ifreq turnoff endin instr 2 imidis0[] fillarray 60, 62, 64, 69 ifreqs0[] mtof imidis0 printarray ifreqs0, "", "ifreqs0" kfreqs[] fillarray 220, 440, 880 kmidis[] ftom kfreqs puts "kfreqs", 1 printarray kmidis, 1, "%.2f", "kmidis" turnoff endin </CsInstruments> <CsScore> i 1 0 1 i 2 0 1 </CsScore> </CsoundSynthesizer>