ftom

ftom — Convert frequency to midi

Description

Plugin opcode in emugens.

Convert frequency to midi note number, taking global value of A4 into account.

Syntax

imidi ftom ifreq [,irnd]
kmidi ftom kfreq [,irnd]

Performance

kfreq / ifreq -- Frequency

irnd -- Optional, if non-zero the result is rounded to the nearest integer (default zero).

kmidi / imidi -- Corresponding midi note number

[Note] Note

Set the global A4 value at the header to modify the tuning

Examples

Here is an example of the ftom opcode. It uses the file mtof-ftom.csd.

Example 374. Example of the ftom opcode.

<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

</CsInstruments>
<CsScore>
i 1 0 10

</CsScore>
</CsoundSynthesizer>


See Also

cpsmidinn, mtof

Credits

By: Eduardo Moguillansky 2017

New in version 6.09

Rounding option new in 6.12