Skip to content

A teaching tool for beginner musicians; by quantifying timbre, this Android app delivers real time feedback to train one's ear and improve playing technique.

Notifications You must be signed in to change notification settings

mktwohy/ToneTutor

Repository files navigation

ToneTutor

Watch Demo

Overview

When beginner musicians are learning how to play an instrument, it’s relatively easy to determine if you’ve played the right notes or not. However, they often overlook the timbre of these notes, which is equally important. Timbre is the quality of a note; for example, warm and round vs sharp and bright

Furthermore, the reason why instruments sound different (even when playing the same note) is the way that a particular instrument exaggerates the overtones of the note. Additionally, different playing techniques - such as picking vs plucking, or playing near the bridge vs near the neck - effect the timbre because they excite the harmonics of the string in different ways.

This project aims to invent the means for quantifying this aspect of music, so that beginner musicians can receive realtime, visual feedback to train their ear and improve their playing technique.

ToneTutor assigns a number to timbre with three steps:

  1. it uses pitch detection to determine the fundamental note
  2. it uses Fourier transformation to figure out the overtones corresponding to that note.
    • In ToneTutor, this is called the harmonic fingerprint.
  3. it calculates a weighted sum of the harmonic fingerprint, with higher overtones having a higher weight.
    • In ToneTutor, this is called a benya.
      • In general, a smaller benya results from a warm note, whereas a large benya results from a bright note. This can be seen in the middle.

Source Code Shortcuts

About

A teaching tool for beginner musicians; by quantifying timbre, this Android app delivers real time feedback to train one's ear and improve playing technique.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published