class Musicality::MidiUtil
Constants
- NOTENUM_TO_PITCH
- PITCH_TO_NOTENUM
- QUARTER
Public Class Methods
delta(duration, ppqn)
click to toggle source
Number of pulses equivalent to the given duration
# File lib/musicality/performance/midi/midi_util.rb, line 6 def self.delta duration, ppqn pulses = (duration / QUARTER) * ppqn return pulses.round end
dynamic_to_volume(dynamic)
click to toggle source
# File lib/musicality/performance/midi/midi_util.rb, line 29 def self.dynamic_to_volume dynamic (dynamic * 127).round end
note_velocity(attack)
click to toggle source
# File lib/musicality/performance/midi/midi_util.rb, line 33 def self.note_velocity(attack) case attack when Attack::NORMAL, Attack::NONE then 70 when Attack::TENUTO then 90 when Attack::ACCENT then 112 else raise ArgumentError end end
notenum_to_pitch(notenum)
click to toggle source
# File lib/musicality/performance/midi/midi_util.rb, line 25 def self.notenum_to_pitch notenum NOTENUM_TO_PITCH.fetch(notenum) end
pitch_to_notenum(pitch)
click to toggle source
# File lib/musicality/performance/midi/midi_util.rb, line 21 def self.pitch_to_notenum pitch PITCH_TO_NOTENUM.fetch(pitch.round) end