ftom~ Reference

Convert frequency to MIDI note numbers at signal-rate

ftom~

Description

Use ftom~ to convert frequency to MIDI note numbers at signal rate

Examples

Convert from Frequency in Hz to MIDI

Arguments

None.

Attributes

base [float]

Sets the "base frequency" used when converting frequency values (e.g., A = 440.). The default is 440.

map [atom]

A set of values for a keyboard map in Scala format:

  • Size of map; the pattern repeats every so many keys (example: 12)
  • First MIDI note number to retune (example: 0)
  • Last MIDI note number to retune (example: 127)
  • Middle note where the first entry of the mapping is mapped to (example: 60)
  • Reference note for which frequency is given (example: 69)
  • Frequency for reference note, as a float (example: 440.0)
  • Frequency for reference note, as a float (example: 440.0)
  • Scale degree to consider as formal octave, determines difference in pitch between adjacent mapping patterns (example: 12)
  • Mapping (example: 0 1 2 3 4 5 6 7 8 9 10 11)
Note: to indicate an unmapped key, you can use either an "x" or "-1". At the end of the list, unmapped keys may be left out. For more information about mappings, visit the Scala documentation.

mapname [symbol]

The name of a valid keyboard map file in Scala format that has been saved in Max's search path will cause ftom~ to use that mapping. The file extension (.kbm) can be omitted. For more information about keyboard mappings, visit the Scala documentation.

mid [int]

The note number where a Scala scale begins (default 60).

ref [int]

The MIDI note number assigned to the base frequency (default 69).

scale [atom]

A set of values, given as a list, for a scale described using the Scala format. The first value is the count of notes, followed either by floats defining a value in cents (example: 579.47057) or a ratio of two ints (example: 5/4). For more information, see the the Scala documentation.

scalename [symbol]

A valid scale name from the Scala archive , will cause ftom~ to use the tuning described in that scale for its frequency to MIDI conversion. For this purposes of this attribute, the file extension (.scl) can be omitted.

Common Box Attributes

annotation [symbol]

Sets the text that will be displayed in the Clue window when the user moves the mouse over the object.

background [int] (default: 0)

Adds or removes the object from the patcher's background layer. background 1 adds the object to the background layer, background 0 removes it. Objects in the background layer are shown behind all objects in the default foreground layer.

color [4 floats]

Sets the color for the object box outline.

fontface [int]

Sets the type style used by the object. The options are:

plain
bold
italic
bold italic Possible values:

0 = 'regular'
1 = 'bold'
2 = 'italic'
3 = 'bold italic'

fontname [symbol]

Sets the object's font.

fontsize [float]

Sets the object's font size (in points). Possible values:

'8'
'9'
'10'
'11'
'12'
'13'
'14'
'16'
'18'
'20'
'24'
'30'
'36'
'48'
'64'
'72'

hidden [int] (default: 0)

Toggles whether an object is hidden when the patcher is locked.

hint [symbol]

Sets the text that will be displayed in as a pop-up hint when the user moves the mouse over the object in a locked patcher.

ignoreclick [int] (default: 0)

Toggles whether an object ignores mouse clicks in a locked patcher.

jspainterfile [symbol]

JS Painter File

patching_rect [4 floats] (default: 0. 0. 100. 0.)

Sets the position and size of the object in the patcher window.

position [2 floats]

g/s(set)

Sets the object's x and y position in both patching and presentation modes (if the object belongs to its patcher's presentation), leaving its size unchanged.

presentation [int] (default: 0)

Sets whether an object belongs to the patcher's presentation.

presentation_rect [4 floats] (default: 0. 0. 0. 0.)

Sets the x and y position and width and height of the object in the patcher's presentation, leaving its patching position unchanged.

rect [4 floats]

g/s(set)

Sets the x and y position and width and height of the object in both patching and presentation modes (if the object belongs to its patcher's presentation).

size [2 floats]

g/s(set)

Sets the object's width and height in both patching and presentation modes (if the object belongs to its patcher's presentation), leaving its position unchanged.

textcolor [4 floats]

Sets the color for the object's text in RGBA format.

textjustification [int]

Sets the justification for the object's text. Possible values:

0 = 'left'
1 = 'center'
2 = 'right'

varname [symbol]

Sets the patcher's scripting name, which can be used to address the object by name in pattr, scripting messages to thispatcher, and the js object.

Messages

signal

Outputs the MIDI note number (from 0 to 127) corresponding to the input frequency

Output

signal

The MIDI note number that corresponds to the input frequency is output as a signal. When an input frequency falls between two pitches, the fractional part of the MIDI value is included.

See Also

Name Description
MIDI MIDI
expr Evaluate a mathematical expression
ftom Convert frequency to a MIDI note number
mtof Convert a MIDI note number to frequency
mtof~ Convert a MIDI note number to frequency at signal rate