General Settings

General

Looping

Playalong

Sheet Music

On Screen Piano

Piano Line

General

Render offset (ms)

Type: range

Default value: 0

Min: -250 Max: 250 Step: 1

Usually the note audio will be played at the exact moment as the falling bars touch the piano keys. Use this setting to offset this time. This can be helpful when screen recording introduces a lag in the audio or rendering.

Disable hotkeys

Type: boolean

Default value: false

Toggle enabling/disabling all hotkeys. You can alternatively configure these individually under 'Configure Hot keys' under 'Settings' -> 'General' at the bottom.

Remember song on reload

Type: boolean

Default value: true

If enabled, the app will load the last song that you had opened on startup.

Remember selected MIDI devices

Type: boolean

Default value: true

If enabled, MIDI devices that had been selected the last time you used the app will automatically be selected on startup if available.

Auto fit zoom for new songs

Type: boolean

Default value: false

If enabled, the piano will automatically set the zoom level to show just enough keys for the current song.

Save uploaded songs in browser

Type: boolean

Default value: true

If enabled, uploaded MIDI files will be saved in your browsers local storage. Note that different browsers have different policies on how long this data is saved, so regularly export your songs to prevent losing your data.

Play notes while scrolling/dragging

Type: boolean

Default value: false

Toggles whether notes should be played (audio) when scrolling through a song.

Reverse note direction

Type: boolean

Default value: false

If enabled, the falling bars will move from bottom to top instead of top to bottom.

Show BPM

Type: boolean

Default value: false

Show BPM display in the top left.

Show FPS

Type: boolean

Default value: false

Show FPS display in the top left.

Show Miliseconds

Type: boolean

Default value: false

Toggle whether to display the time in miliseconds on the timeline.

Enable note debug info on hover over note

Type: boolean

Default value: false

If enabled, hovering over a note / falling bar will display some general info about the MIDI note.

Show markers in the song

Type: boolean

Default value: false

Display text markers from the MIDI file on the screen similar to how measure lines are rendered.

Show markers on timeline

Type: boolean

Default value: false

Display text markers from the MIDI file on the timeline.

Your white note color

Type: color

Default value: rgba(40,155,155,0.8)

The color of the white notes you play.

Your black note color

Type: color

Default value: rgba(40,155,155,0.8)

The color of the black notes you play.

Your Instrument

Type: list

Default value: acoustic_grand_piano

The MIDI instrument of the notes you play.

Scroll sensitivity

Type: range

Default value: 1

Min: 0.1 Max: 2 Step: 0.01

Transpose (+/- semitone)

Type: range

Default value: 0

Min: -12 Max: 12 Step: 1

Transpose the song and your input by an amount of semitones. This will transpose the notes of the song themselves (affecting the sheet music and the falling bars) and also automatically tranpose your input.

Anacrusis beat amount

Type: range

Default value: 0

Min: 0 Max: 4 Step: 1

You can use this setting to define a number of beats that are meant as an anacrusis or pick-up in the song. Some MIDI files handle this themselves by setting a different time signature for the first measure, but that's not guaranteed.

Looping

Enable looping

Type: boolean

Default value: false

Toggle loop mode on/off

Auto reset to loop start

Type: boolean

Default value: true

Toggle whether the loop should automatically restart when it reaches the end.

Loop delay (beats)

Type: range

Default value: 4

Min: 0 Max: 8 Step: 1

Number of beats to count in before the loop starts after reseting

Play beats before loop

Type: boolean

Default value: true

Toggle count in before loop starts

Loop start (Measure #)

Type: range

Default value: 0

Min: 1 Max: 9 Step: 1

Number of the first measure in the range that should be looped.

Loop end (Measure #)

Type: range

Default value: 2

Min: 1 Max: 10 Step: 1

Number of the last measure in the range that should be looped.

Mute notes outside of loop

Type: boolean

Default value: true

Toggle whether notes that lie just before/after the looping range should be muted.

Playalong

Restrict input to range

Type: boolean

Default value: false

Enable this if you're MIDI device has less than 88 keys. Notes outside of the set range do not need to be played for the song to continue in playalong mode. Use this in combination with the transpose setting to customize setup your MIDI device.

Minimum input key

Type: range

Default value: 0

Min: 1 Max: 87 Step: 1

The lowest input key on your MIDI device

Maximum input key

Type: range

Default value: 88

Min: 0 Max: 88 Step: 1

The highest input key on your MIDI device

Highlight keyboard keys to be played

Type: boolean

Default value: false

Some keyboards light up the keys when receiving MIDI signals. If this setting is enabled Midiano will send very quiet notes to your keyboard when they need to be pressed, thus lighting them up.

Sheet Music

Show Sheet Music

Type: boolean

Default value: false

Toggle sheet music on/off

Show Only Sheet

Type: boolean

Default value: false

Enable this to only show sheet music. It will cover the entire screen, so this also disabled the falling bars.

Scrolling sheet

Type: boolean

Default value: true

Toggle whether the sheet music should scroll along horizontally instead of showing static lines of bars. Has no effect if 'Show only sheet' is enabled.

Auto detect clef

Type: boolean

Default value: false

Enable to let the app automatically detect the best clef for a stave. If disabled, the first track will always be a treble clef and the following tracks will all be bass clefs, unless otherwise specific in the tracks settings.

Format staves

Type: boolean

Default value: true

If enabled, the app will attempt to format multiple staves so they are aligned. This may cause problems on complicated arrangements and if there are many tracks.

Override time signature

Type: list

Default value: Auto

Use this to mabnually set a time signature for the song. This will causse all time signature events from the MIDI file to be ignored.

Minimum note denomination

Type: list

Default value: 32nd

The lowest denomination of a note. The app has to approximate what denomination a MIDI note has, so setting this too low will cause less clean results if the MIDI note durations aren't perfectly timed.

Hide rests below & including duration

Type: list

Default value: Sixteenths

Hide all rests below a certain denomination. The detection of rests still depends on the 'Minimum note denomination' setting. This setting simply controls which are rendered.

Min stave gap

Type: range

Default value: 5

Min: 0 Max: 50 Step: 1

The minimum vertical gap between two staves (in pixels).

Min measure width

Type: range

Default value: 250

Min: 50 Max: 400 Step: 1

The minimum width of a measure. Setting this to a higher level mostly causes more consistent widths across measures.

Min width per symbol

Type: range

Default value: 28

Min: 0 Max: 40 Step: 1

The minimum width assigned to each symbol in a measure. Reduce this to make a more dense sheet.

Grand Staff

Type: boolean

Default value: true

If enabled, a vertical line will be drawn between the rendered staves at the start and end of a bar line. It also renderes a curly brace on the left.

Draw input notes

Type: boolean

Default value: true

Toggle whether to render the notes you play on the music sheet.

Show info on mouse over

Type: boolean

Default value: true

Toggle whether to show the note names when hovering over a note with your mouse.

Draw Cursor

Type: boolean

Default value: false

If enabled, it draws a vertical line across the bars at the current time.

Color active notes

Type: boolean

Default value: true

Color currently played notes.

Highlight active notes

Type: boolean

Default value: false

Highlight currently played notes by coloring a rectangle around the ntoe.

Use track color

Type: boolean

Default value: true

Use the respective track color to color the notes.

Grow effect

Type: boolean

Default value: false

Toggle a bouncey/grow effect for active notes.

Active note color

Type: color

Default value: rgba(255, 143, 0, 1)

Sets the color in which active notes are colored. Has no effect if 'Use track colors' is enabled.

Highlight note color

Type: color

Default value: rgba(0, 255, 0, 0.12)

Color of the note highlight.

Background color

Type: color

Default value: #dfdfdf

On Screen Piano

Clickable piano

Type: boolean

Default value: true

Toggle whether the on-screen piano reacts to mouse clicks or touch events.

Show white key names on piano

Type: boolean

Default value: false

Show black key names on piano

Type: boolean

Default value: false

Black key names as flats

Type: boolean

Default value: false

Display notes as flats ( ♭ ) instead of sharps ( ♯ )

Show key bindings on piano

Type: boolean

Default value: false

Displays your (computer) keyboard bindings on the on-screen piano

Color active piano keys

Type: boolean

Default value: true

Color active piano keys in the respective color of the notes' track.

Hit keys effect

Type: boolean

Default value: true

Toggle a kind of bouncey effect when a piano key is played. This creates a nicer visual effect when the same note is played often very fast.

Enable 'lighter' draw

Type: boolean

Default value: false

Enable the 'lighter' drawing mode. This will create a glow effect when used in combination with shadow blur. This setting is heavy on the GPU, so disable it if you are having trouble with your framerate.

White key color

Type: color

Default value: rgba(210,210,210, 1)

Black key color

Type: color

Default value: rgba(25,25,25,1)

Background color

Type: color

Default value: rgba(255,255,255,1)

Velvet color

Type: color

Default value: rgba(125, 5, 3, 1)

Shadow color

Type: color

Default value: rgba(255, 255, 255, 0.31)

Shadow blur

Type: range

Default value: 0

Min: 0 Max: 50 Step: 0.5

Creates a blur around the active piano keys. Use in combination with 'Enable 'lighter' draw' to create a glow effect. Heavy on the GPU, so disable if you are on a slower device.

Piano Position

Type: range

Default value: 0

Min: 0 Max: 100 Step: 1

The position of the piano on screen. 100 is at the top and 0 at the bottom. If 'Reverse note direction' is enabled, it's the other way around.

Height (%) - White keys

Type: range

Default value: 100

Min: 0 Max: 200 Step: 1

Height (%) - Black keys

Type: range

Default value: 100

Min: 0 Max: 200 Step: 1

Enable flare on keys

Type: boolean

Default value: false

Renders a flare at the top of the piano keys.

Flare only on keys

Type: boolean

Default value: false

Renders the flar only on the piano keys but not on the canvas above or below.

Flare size

Type: range

Default value: 1

Min: 0 Max: 2 Step: 0.01

Flare opacity

Type: range

Default value: 1

Min: 0 Max: 1 Step: 0.01

Flare color

Type: color

Default value: rgba(255,255,255,1)

Flare offset

Type: range

Default value: 0

Min: -200 Max: 200 Step: 1

Vertical offset of the flare in pixels.

Piano Line

Enable piano line

Type: boolean

Default value: false

Enables a 3D piano line. This uses a custom shader and is heavy on the GPU, so only enable if you are on a device powerful enough.

Speed

Type: range

Default value: 6

Min: 1 Max: 50 Step: 1

How quickly the piano line shifts its shape.

Resolution

Type: range

Default value: 5

Min: 0.01 Max: 150 Step: 0.01

Controls how fine the detail of the piano line is.

Amplitude

Type: range

Default value: 3

Min: 0.01 Max: 10 Step: 0.01

Controls the amplitude of the piano line.

Reflection

Type: range

Default value: 0.3

Min: 0 Max: 1 Step: 0.001

Controls the opacity of the piano line mirrored vertically.

Color

Type: color

Default value: rgba(255, 255, 255, 1)

Opacity

Type: range

Default value: 1

Min: 0 Max: 1 Step: 0.01

Y-Offset

Type: range

Default value: 0

Min: -50 Max: 50 Step: 1