Play ABC tunes with synchronized 10-, 12-, or 16-hole diatonic or chromatic harmonica diagrams.
4 = blow -4 = draw -3' = 1-semitone bend -3'' = 2-semitone bend -3''' = 3-semitone bend6o = overblow -7o = overdraw 1s = slide-in x = note unavailable-, ', o, s, and x are used. Hole numbers must fit the selected instrument.
Overview
Load, type, or paste ABC tunes and play them with synchronized standard notation and a simulated horizontal harmonica for 10-, 12-, or 16-hole diatonic or chromatic styles.
The active hole is highlighted while the symbol below it shows the required breath direction or technique.
The player supports Standard Richter , Paddy Richter , Easy Thirds , Melody Maker , Country (Major 7th) , Natural Minor , and 12- and 16-hole Chromatic harmonicas.
Harmonica Settings
Harmonica tuning chooses the note layout: the first six options are 10-hole diatonic tunings, and the next two are 12-hole and 16-hole chromatic layouts.
The bottom of the Harmonica tuning menu also contains an option for using a custom tuning and Configure Custom Tuning....
See Custom Harmonica Tuning below for complete instructions on creating, saving and loading custom tunings.
Harmonica key chooses G, G#, A, Bb, B, C, C#, D, Eb, E, F, or F#.
Octave shift shifts the harmonica fingering assignment by whole octaves from -3 through +3 without changing the written ABC notes.
The selected harmonica tuning, key, and octave shift are saved in this browser and are also included in share links.
Harmonica Technique Symbols
Each diagram shows the correct number of holes for the selected harmonica.
Display selects how the current harmonica technique is shown.
There are three options: Use Arrows, Use Bars, and Text.
Use Arrows (the default) uses directional arrow shapes for blow, draw, and bends, with o for overblow/overdraw and S for the chromatic slide.
If the current instrument definition contains an s on any note in its tablature map, the 10-, 12-, or 16-hole harmonica diagram also shows an animated physical slide. This applies to both built-in and custom instruments; the slide moves in for notes marked with s and remains out for other notes.
In Use Arrows or Use Bars display mode, click Legend to display the technique symbols in a floating window while using the player. Drag the window by its title bar to reposition it and click × to close it. The Legend shows the symbols for the currently selected style. The Legend button is hidden in Text display mode.
Use Bars uses straight up/down breath arrows, horizontal bars across the arrow for bend depth, a circle centered on the arrow shaft for overblow or overdraw, and S for the chromatic slide.
Text uses the original ABC Transcription Tools harmonica tablature text. Numbers correspond to the holes on the harmonica. A number alone indicates blow. Draw is indicated by – before the number. Bends are indicated by ', '', or ''' after the number. Overblow is indicated by o after the number. s indicates pressing the slide on Chromatic instruments.
The Display setting is remembered in this browser, including the selected Use Arrows, Use Bars, or Text mode.
ABC Editing and Notation
Editing the ABC rebuilds the notation and harmonica solution. Clicking a rendered note selects the complete ABC note token and updates the harmonica display to that note.
Use the editor text-size menu to change the ABC editor text size.
Show note displays the current note on a staff beside the note name and is remembered in this browser.
The Full-Page View buttons expand the ABC editor, notation, or harmonica display to fill the page. Press Escape to leave a full-page view; the harmonica view also provides an Exit Full-Page button.
Playback
Playback follows the notation cursor and harmonica display, highlighting the current harmonica hole and technique as the tune plays.
Use the playback controls below the notation to start or pause the tune, restart from the beginning, turn looping on or off, move to a different position in the tune, and change the playback speed.
Mute Melody turns the melody sound off or back on. This is useful when you want to play the melody yourself while keeping any accompaniment or metronome.
Metronome adds a click during playback. If the selected tune uses a meter for which a metronome pattern is not available, the tool will let you know and leave the metronome off.
Count in? adds a five-second on-screen countdown before playback begins.
Click Tempo to set the playback speed from 10% to 200% of the tune's normal tempo. The playback speed control below the notation shows and changes the same percentage.
Saving and Sharing
Save writes the current ABC collection to a file.
Click Share Tune to create a share link for the currently displayed tune, or Share All Tunes to create a share link containing all loaded tunes.
The link includes the selected harmonica tuning, key, and octave shift and is copied to the clipboard.
Shift-click Share Tune or Share All Tunes to open the selected ABC directly in the ABC Transcription Tools ABC Editor instead of copying this player's share URL.
Alt-click Share Tune or Share All Tunes to open the selected ABC directly in the ABC Transcription Tools Player.
When the selected harmonica tuning is a custom tuning, the complete custom tuning is included in the share link, including its name, hole count, and all 60 tablature note assignments.
Opening a share link that contains a custom tuning temporarily uses the custom tuning from the link without replacing the custom tuning already saved in that browser.
To keep a custom tuning received in a share link for future use, open the custom tuning dialog and click Save.
A share button is disabled when its resulting link would exceed the maximum allowed of 8100 characters.
Opening a share link restores its harmonica tuning, key, and octave shift and displays the first tune encoded in the link.
When tunes are opened from a share link, click the Click to Enable Playback button in the playback area before using the normal playback controls.
This user action allows audio playback to be initialized on browsers that require a user gesture before starting audio.
Custom Harmonica Tuning
Custom tuning is an advanced feature.
It works with custom harmonica tablature settings files saved from the ABC Transcription Tools if they contain only the allowed tablature syntax described below.
The custom tuning initially matches Standard Richter.
After you give the custom tuning a name and save it, that name is shown near the bottom of the Harmonica tuning menu.
Selecting that named custom tuning uses its tablature map.
Selecting Configure Custom Tuning... opens the custom tuning editor without changing the currently selected tuning.
The editor contains a five-octave, 60-note custom harmonica tablature map compatible with the custom harmonica tablature settings used by ABC Transcription Tools.
Enter a custom tuning name and choose whether the physical harmonica has 10, 12, or 16 holes.
Each note entry must use the ABC Transcription Tools harmonica tablature syntax described below. Examples of valid entries include:
4 = blow.
-4 = draw.
-3' = 1-semitone bend.
-3'' = 2-semitone bend.
-3''' = 3-semitone bend.
6o = overblow.
-7o = overdraw.
1s = slide-in.
x = note unavailable.
Only the supported blow, draw, bend, overblow/overdraw, and slide combinations are allowed.
Every referenced hole number must be within the selected 10-, 12-, or 16-hole instrument size before the tuning can be saved.
Load Tuning File loads a .txt custom harmonica tuning file saved by ABC Transcription Tools or by this player.
Loading a tuning file places it in the editor for review; it does not replace your saved custom tuning until you click Save.
ABC Transcription Tools custom tuning files do not contain a hole count, so the player infers an initial 10-, 12-, or 16-hole setting from the highest hole number referenced in the file.
After loading a file without a hole count, you may change the hole count to any of the three choices while editing, including a smaller size.
The selected hole count and all tablature entries are validated when you save the tuning to the player or save it to a file.
A tuning cannot be saved while it contains an invalid entry or an out-of-range hole reference.
Invalid files do not replace your previously saved custom tuning.
Files saved by this player include the hole count.
Those files can still be loaded by ABC Transcription Tools, which ignores the additional hole-count field.
Save Tuning File validates the custom tuning name, selected hole count, and all 60 tablature entries before saving.
After validation, you are asked for a file name.
The suggested file name is based on the custom tuning name.
Initialize from Preset opens a dialog where you can initialize the editor from any built-in tuning, or choose Reset All to x.
Applying a built-in preset copies its map into the editor, sets the name to Custom followed by the preset name, and selects the matching 10-, 12-, or 16-hole size.
Reset All to x fills all 60 entries with x, names it New Tuning Preset, and selects 10 Hole.
Initialization only changes the editor; it is not stored until you click Save in the main custom tuning dialog.
The dialog's Save button validates and stores the custom tuning name, hole count, and tablature map in this browser for reuse.
After a valid custom tuning is saved, the player automatically switches to that custom tuning.
Cancel closes the editor without replacing the previously saved custom tuning.
When a share link uses the custom tuning, the complete custom tuning is embedded in the link, including its name, hole count, and all 60 tablature note assignments.
The custom tuning from the share link is used temporarily and does not replace the custom tuning already saved in the recipient's browser.
To keep the shared custom tuning for future use, open the custom tuning dialog and click Save.
Volume Override URL Parameters
Three optional URL parameters can override playback volume settings:
volume= sets the harmonica volume using a decimal value from 0 to 1.0. The default is 0.5.
bassvol= sets the MIDI bass accompaniment volume using an integer value from 0 to 127. The default is 64.
chordvol= sets the MIDI chord accompaniment volume using an integer value from 0 to 127. The default is 64.
For example:
?volume=0.6&bassvol=72&chordvol=56
If the URL already contains other parameters, after the other parameters, append the volume parameters using & .
The volume settings are not saved in this browser. If a volume override is present in the current URL, it is included in generated share links and restored when those links are opened.
fadems= sets the harmonica sample fade time in milliseconds using an integer value from 10 to 200. The default is 60 milliseconds.
For example:
?fadems=60
If the URL already contains other parameters, after the other parameters, append the fadems parameter using & .
The fadems setting is not saved in this browser. If a fade-time override is present in the current URL, it is included in generated share links and restored when those links are opened.
About
This tool was created by
Michael Eskin
If you find it useful, please consider a contribution via
Michael Eskin's Tip Jars