User Manual

MIDI Settings Menu

While mapping MIDI commands to actions via triggers is one of the most common functions of MIDI integration in OnSong, there are a number of other features that can be configured through settings. You can access these settings from the MIDI Triggers Screen. The following options are available:


This section allows you to toggle MIDI on and off as well as handling connected MIDI devices.

  • MIDI Enabled turns the MIDI system on our off to toggle whether MIDI is sent or received by OnSong.
  • Sources shows the number of CoreMIDI devices that are enabled that can send MIDI events to OnSong. Sources are added automatically. Tap to view sources and toggle whether OnSong receives MIDI from those devices.
  • Destinations shows the number of enabled destinations where MIDI can be sent from OnSong. Destinations are added automatically. Tap to view and toggle whether OnSong sends MIDI to those devices.
  • Playback determines MIDI destination OnSong should send MIDI note and control events to when MIDI files are played like backing tracks.
  • Virtual MIDI allows you to enable or disable the virtual MIDI port for direct communication between other iOS apps.


This sections provides tools to synchronize OnSong with another MIDI device or hardware. Turn on the following options to enable synchronization.

  • Playback sends MIDI start, stop and continue commands to start, stop and pause MIDI programs on other devices. For instance, tapping on the Audio Button in the Live Bar will not only start a backing track if available, but also start the MIDI program on a synthesize or application like Ableton Live.
  • MIDI clock synchronizes the tempo of the current song to connected hardware or software using the MIDI clock. This sends 24 clock signals for every beat. As you switch songs, the tempo of your MIDI hardware or software will adapter, assuming it supports MIDI clock tempo synchronization.
  • Clock adjustment is located below the MIDI clock option and can be used to adjust the speed of the MIDI clock by a percentage. Use the - or + buttons to decrease or increase this amount.
  • Time signature can be enabled to send a universal real-time system exclusive message when the time signature is changed. Some software and hardware can use this information to change time signature.
  • Tempo can be set to a channel to send tempo changes as control changes instead of using MIDI clock. This is more accurate in high latency environments when supported. Tempo is sent as a combined MSB/LSB on CC 106/107 with an option to send the CC every n seconds to maintain tempo lock.


OnSong can listen for MIDI events and use that information:

  • For Chords will listen to note on and off events received from MIDI sources. This is used in the Song Editor to determine and insert chords. Enable this feature by choosing a channel or all channels. When turned on, you can place your text cursor in the Song Editor and play a chord on a keyboard or other instrument. The chord is detected and inserted in the text.
  • For Tempo will listen to MIDI clock to determine the tempo of the metronome. This will not be saved to the song but rather allows the tempo of OnSong to be altered dynamically.

Control Change

  • Toggle between on/off can be enabled when a control handles CC events differently. For instance, some guitar pedal boards are set to be latching instead of momentary. Momentary switches typically send single value of 127. Latching will toggle between 0 and 127 each time the pedal is pressed. Typically OnSong ignores values below 64 for momentary actions. To use a latching switch with OnSong, turn the Toggle between on/off switch on to set the same or different actions for the on and off state of the pedal.
  • Use absolute adjustments is used when performing Variable Actions. When this is off, the MIDI value (0-127) is interpreted as a relative adjustment between 0-100% of available options such as sections or songs in a set. If this option is enabled, the value sent via MIDI is used. For example, to select section 7, you would sent a MIDI value of 7.

Chord Playback

OnSong can play back chords using optional sound banks, or by sending the chord's notes through MIDI to your MIDI destinations. Turn this on by choosing a channel. When chords are set to play using MIDI, standard sound banks will be nonfunctional until this setting is turned back to Off.


When playing notes in MIDI, they are required to have a specific velocity. Velocity for note events is how hard each note is to be played. OnSong defaults to 64 with the velocity to avoid being to quiet or too loud. You can adjust the velocity to play the chords louder or softer.


It's handy to know what MIDI is being sent by OnSong. The display section allows you to turn on various MIDI events to be viewed by flashing a message on the screen. You can turn on:

  • Note Events displays Note On and Note Off events.
  • Program Changes displays Program Change the Bank Select events.
  • Control Events displays Control Change events.
  • Sequence Events displays start, stop and continue events.
  • One-Based Index (1-128) changes the display of MIDI channels, programs, and values to start with 1 instead of 0 to avoid confusion. This is enabled by default and also effects how MIDI program changes, control changes and notes appear throughout the app.
OnSong 1.999 — Last Updated on April 8, 2019