Today I launched version 3.0 of my free online ear trainer!
This new version of my ear trainer runs natively in modern web browsers, without the need for Java or any other type of plugin. It's a nice change of pace from the security warnings and Java installation headaches of my old ear trainer (first created as a Java applet back in 2004).
UPDATE 11/12/22 - Fixed issue where progression highlighting is incorrect after changing the tempo. Fixed timeout issue for audio on some iOS devices.
UPDATE 10/10/22 - Added Drop 3 and Drop 2+4 chord voicings as well as a 1,000-note option to the interval sequences.
UPDATE 5/21/22 - Added a new "Intervals: Key from Note" Sample Exercise, which can help help you to identify a chord's key by using a reference note. The Custom Scratchpad supports new "absolute" tags, which will force the enclosed sequence to play as written, even when you have modulated to a different key (see Scratchpad examples #1 and #8). A new <#chord> tag will speak aloud the currently playing chord key and chord type for Custom chord progressions (see example #11).
UPDATE 4/17/22 - When notes are higher and lower than the displayed range, they will now have a "8va" or "8vb" next to them to indicate their actual position on the staff. The Custom feature now supports tags to prevent parts of a script from appearing in the display. There is also the addition of an ellipsis shortcut to indicate a range of notes in Custom scripts (ex: C...c).
UPDATE 2/1/22 - The display of progressions has been improved to scale better on different screen sizes.
UPDATE 12/22/21 - The Progressions and Custom tabs now have an option for a drum stick count in, to give you a chance to prepare before the exercise starts. Keyboard shortcuts have been added for playing a middle C (period key) and repeating an exercise without also playing the starting cadence (shift+left arrow). More information on keyboard shortcuts is farther down this page. A new Yamaha DX7 piano type has been added. It's a nice quality soundfont, but due to the fluctuation in pitch, it probably wouldn't be my first choice for many of the ear training exercises.
UPDATE 9/28/21 - The Custom feature now supports variables and randomization for simultaneous notes.
UPDATE 8/14/21 - Added two new piano sounds that can be used with any exercise.
UPDATE 4/8/21 - Added ability to share the ear trainer's current configuration via a unique URL. This was you can share an exercise with other people without having to tell them each and every box to check. They can just load your saved configuration's URL and their ear trainer's settings will automatically match yours when you created the URL.
UPDATE 3/1/21 - Added some sample exercises to demonstrate various capabilities of the ear trainer and to help people get started with ear training. Also added stepped sequences to the Intervals and Melodies tab.
UPDATE 2/1/21 - The staff has been updated to support retina displays. The Custom feature now supports repeats and modulation control. Lastly, the bass clef has been improved to show notes in a friendlier octave when possible.
UPDATE 12/16/20 - The Intervals tab now supports longer sequences, so you could specify a few intervals and each subsequent note of the sequence will be within that interval. For this feature, I recommend "Random" for "Note Direction" in order to avoid octave shifts that will occur if it gets out of range. The Custom feature can now support words, allowing you to add note names and other words to your Custom scripts (for a complete list, see example #9 of the scratchpad instructions). The Progressions tab now includes Dom7sus4 and Dim7 chord types. Finally, the ABC notation processing engine has been improved to support more complex rhythms. If any of your scripts no longer sound as you expected, please let me know.
UPDATE 8/31/20 - In addition to a starting cadence, there's now an option for short drone.
UPDATE 8/8/20 - I switched to new mp3 piano sound files which should improve the audio quality for browsers (e.g. Safari) and operating systems that use mp3s (e.g. iOS). I also added an option to repeat an exercise without adding a delay (under Play Mode) and I increased the maximum repeat count to 36. This could be helpful if you want to repeat a chord/note over and over again as a drone.
UPDATE 6/13/20 - Added a version checker so the ear trainer will let you know when a new version is available. Also, Custom sequences now display the proper notes when transposed into different keys.
UPDATE 6/4/20 - Here's the largest update since 3.0 went online. I fixed a bug which logged you out after a few days, forcing you to reload the page to login. I added the ability to be logged on from multiple devices. I improved the audio for iOS devices. I added support for Major 6 chords in the Custom scratchpad. I improved the responsiveness of the ear trainer, so it resizes better on smaller screens. The initial load no longer produces no audio for the first exercise on iOS. There is now an option to have the note names read back to you. This is handy if you want to have it running in the background while doing other tasks. I was going to use SpeechSynthesis to read back the interval and chord names, but due to an issue with iOS, I had to resort to audio files. As a result, it's only going to read the note names. You can also have the results delay until you click in the staff area. That works best with Manual mode. With all that's going on in the world today, I hope you'll get some use out of this update.
UPDATE 1/4/20 - Added Major 7 b5 chord to the Chords tab. Also, in random custom scripts, accidentals are now cleared after each random sequence. Previously, accidentals would accumulate and carry over to subsequent randomizations.
UPDATE 5/10/18 - Due to a recent change in Chrome's autoplay restrictions, the ear trainer may have stopped producing audio. I put in a quick fix which may need to be altered a bit to improve performance on mobile devices.
UPDATE 5/15/17 - I added a hi-hat and ride cymbal to the rhythm sections used by the Progressions and Custom features. The Progressions section also includes the ability to choose between a single key center and a random mixing of keys when it creates a chord progression. This could be used, for example, to practice a ii-V7-I progression in random keys without pausing in between each key change.
UPDATE 10/4/16 - The custom feature now supports melodies with even (i.e. non-swing) rhythms. To enable this feature, add "R:even" to the top of your custom script. Note that this only applies to stand-alone melodies. Rhythmic accompaniments will still use swing rhythms regardless of this setting.
UPDATE 9/6/16 - This update introduces the concept of custom exercises, where an "exercise" saves the current ear trainer settings. For example, if you like to practice random melodies with a tempo of 120bpm, in auto-play mode, with 3 repeats, and random modulation, you can save that configuration as an exercise. Another ear training exercise might be random ii-V7-I chord progressions with a tempo of 90bpm. Once you save these as separate exercises, you can return to them at any time without having to manually change the tempos, repeat options, etc. You just click on the exercise names and stored configuration is loaded automatically! To use this feature, simply login and then use the "Your Exercises" link at the upper right to create a new exercise.
UPDATE 7/30/16 - Thanks to a visitor's request, I have added Sus2 and Sus4 triads to the Chords feature.
UPDATE 5/12/16 - This update adds randomization to the ear trainer's Custom tab, with a syntax like the following: { randomSequence1 ; randomSequence2 ; randomSequence3 }. As an example, if you want to play a C and then a random note that's either a G, A, or B, you'd put the following into the Custom tab: C { G ; A ; B }
UPDATE 3/6/16 - The melodies feature now includes the ability to play a cluster of notes simultaneously via the "Sequence Type=Harmonic" option. A suggested exercise for this would be to play a C major cadence followed by the note cluster. Begin with a couple of notes, and increase to as many as you can identify. Over time, this should improve your relative pitch. I also added a few new 9th chords to the chords feature. Both of these new features are the result of your feature requests, so thank you for your suggestions!
UPDATE 10/31/15 - I improved the layout of chord progressions for this update, so they should be easier to read. Also, I fixed a problem single-note melodies and and the "Restrict to Single Octave" option.
UPDATE 10/20/15 - This update fixes a few bugs, including an issue where modulation could force the jazz progressions to be played in extreme upper and lower registers. Additionally, the Custom tab's scripts will now respect the specified double bar repeat settings. To round things out, you'll find a few more examples for the Custom tab's scratchpad feature, including a listing of all currently supported chord types.
UPDATE 8/29/15 - With this update, you can click on the notes in the ear trainer's staff in order to hear a specific note. I also added a sight singing "Play Mode" where the ear trainer will show notes without playing audio. Once the notes appear, you can click on individual notes to hear their pitches or you can click the repeat button to hear the entire sequence.
UPDATE 7/31/15 - This update focuses primarily on the Custom tab. New options have been added for modulation within sequences via double bar lines ( || ). This is handy if you want to do ear training over an entire song. By adding double bar lines periodically within the song, you can repeat and modulate a series of measures.
UPDATE 5/2/15 - I added a new soundfont which greatly improves the piano sound for Safari and other browsers that don't support Ogg files. With this change, I think my new ear training application runs almost as well on Safari as it does on Chrome and Opera.
UPDATE 5/1/15 - This update fixes several bugs, adds keyboard support for controlling playback (left arrow=repeat, right arrow=next, space=play/stop), and it includes a few new chord progressions (jazz blues, minor blues, etc). The biggest change is the addition of accounts. Once you register for your free account, you can save your custom melodies and chord progressions. I still need to improve the documentation and examples for the custom markup, but hopefully the existing samples will give you enough to start customizing your ear training exercises.