Converts from Hz to semitones above C-5 (~0.5109875 Hz) or another reference
frequency. This may not seem very useful, but note that this gives us a nice
logarithmic scale for generating natural pitch transitions with the added
benefit of getting musical notation for free from notesDict
(see
examples).
HzToSemitones(h, ref = 0.5109875)
vector or matrix of frequencies (Hz)
frequency of the reference value (defaults to C-5, 0.51 Hz)
# NOT RUN {
s = HzToSemitones(c(440, 293, 115))
# to convert to musical notation
notesDict$note[1 + round(s)]
# note the "1 +": semitones ABOVE C-5, i.e. notesDict[1, ] is C-5
# Any reference tone can be specified. For ex., for semitones above C0, use:
HzToSemitones(440, ref = 16.35)
# TIP: see notesDict for a table of Hz frequencies to musical notation
# }
Run the code above in your browser using DataLab