CS476A Final Project: Ear Master

Sizi Chen (sizichen@stanford.edu)


Ear Master is an ear training software designed to help people perfect their ears through interactive interval recognition exercises and games.


As a student with years of musical training, I always find ear training to be one of the most challenging parts in the development of my musicianship. While ear training in classroom is rigorous and helpful, it is usually not interactive enough and I could easily lose my interests in doing repetitive exercises. I want to use this final project as an opportunity to develop a software that hopefully would make ear training an engaging learning process.


The software contains two parts, practice and quiz. The practice section provides users with small interval identification exercises to war. The quiz part features an exciting shooting game in which users will hear intervals and try to shoot bubbles with the correct interval names under time constraints in each game.

Possible Improvements

Two other features I would love to add to the software is to analyze users’ learning results and develop customized exercises for them based on those results.

User Guide

You will need openFrameworks to build the software. After you download openFrameworks, place the entire unzipped folder that contains all the codes of the software into this path: (name of your openFrameworks folder)/apps/myApps/ and then run it.


Ear Master was built on openFrameworks, an open source C++ toolkit that combines several commonly used libraries, including OpenGL, GLEW, GLUT for graphics and rtAudio for audio input and output. Some examples codes from openFrameworks were adapted in the design and implementation of the quiz part of the software.


Practice: interval identification.

Quiz: a shooting game to train your ear.