pganssle / cim

Chord Identification Method Trainer
https://pganssle.github.io/cim/
Apache License 2.0
6 stars 3 forks source link

Use consistent note duration #36

Open pganssle opened 9 months ago

pganssle commented 9 months ago

When I originally put this app together, I used a bunch of varying durations, because I didn't want the kids to end up learning the sound of a specific file and duration instead of learning the note. However, according to the book, you should actually aim for consistency with the notes (from a translation):

Play the chords for about two seconds. Count slowly, "one, two," and cut off the sound on "three." Always maintain the same duration for each chord. It is not advisable to play staccato one day and then play elongated notes the next day.

In the Tone.js version this is pretty easy to accomplish, because the duration is set programmatically, but it might be more annoying to backport that to the "legacy" version. If we can reliably fix #24, I'd be more comfortable with abandoning the old pre-recorded sounds.

On the plus side, it's a lot easier to provide pre-recorded files for every chord (as opposed to using Tone.js) if they are always the same length, since you just need 1 file per chord.