freq
tonal-freq
is a collection of functions to perform calculations related to frequencies.This is part of tonal music theory library.
Usage
var freq = require('tonal-freq')
freq.toFreq('A4') // => 440
freq.note(440) // => 'A4'
freq.noteAndDetune(320) // => ['C4', 200]
Install
API Documentation
* [`.eqTempFreq(ref, maxDecimals, note)`](#module_freq.eqTempFreq) ⇒ <code>Number</code>
* [`.toFreq(note)`](#module_freq.toFreq) ⇒ <code>Float</code>
* [`.eqTempFreqToMidi(tuning, freq)`](#module_freq.eqTempFreqToMidi) ⇒ <code>Number</code>
* [`.toMidi(freq)`](#module_freq.toMidi) ⇒ <code>Number</code>
* [`.note(freq, useSharps)`](#module_freq.note) ⇒ <code>String</code>
* [`.cents(base, freq)`](#module_freq.cents) ⇒ <code>Integer</code>
freq.eqTempFreq(ref, maxDecimals, note)
⇒ Number
Return the equal tempered frequency of a note.This function can be partially applied if note parameter is not present.
Kind: static method of
freq
Returns:
Number
- the frequency| Param | Type | Description | | --- | --- | --- | | ref |
Float
| the tuning reference |
| maxDecimals | Integer
| (Optional) the maximum number of decimals (all by default) |
| note | String
\| Pitch
| the note to get the frequency from |Example
eqTempFreq(444, 4, 'C3')
const toFreq = eqTempFreq(444, 2)
toFreq('A3') // => 222
freq.toFreq(note)
⇒ Float
Get the frequency of note with 2 decimals precission using A4 440Hz tuningThis is an alias for:
eqTempFreq(440, 2, <note>)
Kind: static method of
freq
Returns:
Float
- the frequency in herzs| Param | Type | Description | | --- | --- | --- | | note |
Number
\| String
| the note name or midi number |Example
freq.toFreq('A4') // => 440
freq.toFreq('C4') // => 261.63
freq.eqTempFreqToMidi(tuning, freq)
⇒ Number
Get the midi note from a frequency in equal temperament scale. You can
specify the number of decimals of the midi number.Kind: static method of
freq
Returns:
Number
- the midi number| Param | Type | Description | | --- | --- | --- | | tuning |
Float
| (Optional) the reference A4 tuning (440Hz by default) |
| freq | Number
| the frequency |freq.toMidi(freq)
⇒ Number
Get midi number from frequency with two decimals of precission.This is an alisas for:
eqTempFreqToMidi(440, 2, <freq>)
Kind: static method of
freq
Returns:
Number
- midi number| Param | Type | | --- | --- | | freq |
Float
| Example
freq.toMidi(361) // => 59.96
freq.note(freq, useSharps)
⇒ String
Get note name from frequency using an equal temperament scale with 440Hz
as referenceKind: static method of
freq
Returns:
String
- note name| Param | Type | Description | | --- | --- | --- | | freq |
Float
| |
| useSharps | Boolean
| (Optional) set to true to use sharps instead of flats |Example
freq.note(440) // => 'A4'
freq.cents(base, freq)
⇒ Integer
Get difference in cents between two frequencies. The frequencies can be
expressed with hertzs or midi numbers or note namesKind: static method of
freq
Returns:
Integer
- The difference in cents| Param | Type | | --- | --- | | base |
Float
\| Integer
\| String
|
| freq | Float
\| Integer
\| String
| Example
import { cents } from 'tonal-freq'
cents('C4', 261) // => -4